// Copyright (C) 2018 The Android Open Source Project
// Copyright (C) 2018 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Autogenerated module goldfish_vk_marshaling_guest
// (header) generated by android/android-emugl/host/libs/libOpenglRender/vulkan-registry/xml/genvk.py -registry android/android-emugl/host/libs/libOpenglRender/vulkan-registry/xml/vk.xml cereal -o android/android-emugl/host/libs/libOpenglRender/vulkan/cereal
// Please do not modify directly;
// re-run android/scripts/generate-vulkan-sources.sh,
// or directly from Python by defining:
// VULKAN_REGISTRY_XML_DIR : Directory containing genvk.py and vk.xml
// CEREAL_OUTPUT_DIR: Where to put the generated sources.
// python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR

#pragma once

#include <vulkan/vulkan.h>


#include "vk_platform_compat.h"

#include "goldfish_vk_marshaling_guest.h"
#include "goldfish_vk_private_defs.h"
#include "VulkanStreamGuest.h"

// Stuff we are not going to use but if included,
// will cause compile errors. These are Android Vulkan
// required extensions, but the approach will be to
// implement them completely on the guest side.
#undef VK_KHR_android_surface
#undef VK_ANDROID_external_memory_android_hardware_buffer


namespace goldfish_vk {

#ifdef VK_VERSION_1_0
void marshal_VkExtent2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExtent2D* forMarshaling);

void unmarshal_VkExtent2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExtent2D* forUnmarshaling);

void marshal_VkExtent3D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExtent3D* forMarshaling);

void unmarshal_VkExtent3D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExtent3D* forUnmarshaling);

void marshal_VkOffset2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkOffset2D* forMarshaling);

void unmarshal_VkOffset2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkOffset2D* forUnmarshaling);

void marshal_VkOffset3D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkOffset3D* forMarshaling);

void unmarshal_VkOffset3D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkOffset3D* forUnmarshaling);

void marshal_VkRect2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRect2D* forMarshaling);

void unmarshal_VkRect2D(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRect2D* forUnmarshaling);

void marshal_VkBaseInStructure(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBaseInStructure* forMarshaling);

void unmarshal_VkBaseInStructure(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBaseInStructure* forUnmarshaling);

void marshal_VkBaseOutStructure(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBaseOutStructure* forMarshaling);

void unmarshal_VkBaseOutStructure(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBaseOutStructure* forUnmarshaling);

void marshal_VkBufferMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferMemoryBarrier* forMarshaling);

void unmarshal_VkBufferMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferMemoryBarrier* forUnmarshaling);

void marshal_VkDispatchIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDispatchIndirectCommand* forMarshaling);

void unmarshal_VkDispatchIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDispatchIndirectCommand* forUnmarshaling);

void marshal_VkDrawIndexedIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDrawIndexedIndirectCommand* forMarshaling);

void unmarshal_VkDrawIndexedIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDrawIndexedIndirectCommand* forUnmarshaling);

void marshal_VkDrawIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDrawIndirectCommand* forMarshaling);

void unmarshal_VkDrawIndirectCommand(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDrawIndirectCommand* forUnmarshaling);

void marshal_VkImageSubresourceRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageSubresourceRange* forMarshaling);

void unmarshal_VkImageSubresourceRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageSubresourceRange* forUnmarshaling);

void marshal_VkImageMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageMemoryBarrier* forMarshaling);

void unmarshal_VkImageMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageMemoryBarrier* forUnmarshaling);

void marshal_VkMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryBarrier* forMarshaling);

void unmarshal_VkMemoryBarrier(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryBarrier* forUnmarshaling);

void marshal_VkAllocationCallbacks(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAllocationCallbacks* forMarshaling);

void unmarshal_VkAllocationCallbacks(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAllocationCallbacks* forUnmarshaling);

void marshal_VkApplicationInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkApplicationInfo* forMarshaling);

void unmarshal_VkApplicationInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkApplicationInfo* forUnmarshaling);

void marshal_VkFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFormatProperties* forMarshaling);

void unmarshal_VkFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFormatProperties* forUnmarshaling);

void marshal_VkImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageFormatProperties* forMarshaling);

void unmarshal_VkImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageFormatProperties* forUnmarshaling);

void marshal_VkInstanceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkInstanceCreateInfo* forMarshaling);

void unmarshal_VkInstanceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkInstanceCreateInfo* forUnmarshaling);

void marshal_VkMemoryHeap(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryHeap* forMarshaling);

void unmarshal_VkMemoryHeap(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryHeap* forUnmarshaling);

void marshal_VkMemoryType(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryType* forMarshaling);

void unmarshal_VkMemoryType(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryType* forUnmarshaling);

void marshal_VkPhysicalDeviceFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceLimits(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceLimits* forMarshaling);

void unmarshal_VkPhysicalDeviceLimits(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceLimits* forUnmarshaling);

void marshal_VkPhysicalDeviceMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMemoryProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMemoryProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceSparseProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSparseProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceSparseProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSparseProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceProperties* forUnmarshaling);

void marshal_VkQueueFamilyProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueueFamilyProperties* forMarshaling);

void unmarshal_VkQueueFamilyProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueueFamilyProperties* forUnmarshaling);

#define OP_vkCreateInstance 20000
#define OP_vkDestroyInstance 20001
#define OP_vkEnumeratePhysicalDevices 20002
#define OP_vkGetPhysicalDeviceFeatures 20003
#define OP_vkGetPhysicalDeviceFormatProperties 20004
#define OP_vkGetPhysicalDeviceImageFormatProperties 20005
#define OP_vkGetPhysicalDeviceProperties 20006
#define OP_vkGetPhysicalDeviceQueueFamilyProperties 20007
#define OP_vkGetPhysicalDeviceMemoryProperties 20008
#define OP_vkGetInstanceProcAddr 20009
#define OP_vkGetDeviceProcAddr 20010
void marshal_VkDeviceQueueCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceQueueCreateInfo* forMarshaling);

void unmarshal_VkDeviceQueueCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceQueueCreateInfo* forUnmarshaling);

void marshal_VkDeviceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceCreateInfo* forMarshaling);

void unmarshal_VkDeviceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceCreateInfo* forUnmarshaling);

#define OP_vkCreateDevice 20011
#define OP_vkDestroyDevice 20012
void marshal_VkExtensionProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExtensionProperties* forMarshaling);

void unmarshal_VkExtensionProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExtensionProperties* forUnmarshaling);

#define OP_vkEnumerateInstanceExtensionProperties 20013
#define OP_vkEnumerateDeviceExtensionProperties 20014
void marshal_VkLayerProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkLayerProperties* forMarshaling);

void unmarshal_VkLayerProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkLayerProperties* forUnmarshaling);

#define OP_vkEnumerateInstanceLayerProperties 20015
#define OP_vkEnumerateDeviceLayerProperties 20016
void marshal_VkSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubmitInfo* forMarshaling);

void unmarshal_VkSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubmitInfo* forUnmarshaling);

#define OP_vkGetDeviceQueue 20017
#define OP_vkQueueSubmit 20018
#define OP_vkQueueWaitIdle 20019
#define OP_vkDeviceWaitIdle 20020
void marshal_VkMappedMemoryRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMappedMemoryRange* forMarshaling);

void unmarshal_VkMappedMemoryRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMappedMemoryRange* forUnmarshaling);

void marshal_VkMemoryAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryAllocateInfo* forMarshaling);

void unmarshal_VkMemoryAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryAllocateInfo* forUnmarshaling);

#define OP_vkAllocateMemory 20021
#define OP_vkFreeMemory 20022
#define OP_vkMapMemory 20023
#define OP_vkUnmapMemory 20024
#define OP_vkFlushMappedMemoryRanges 20025
#define OP_vkInvalidateMappedMemoryRanges 20026
#define OP_vkGetDeviceMemoryCommitment 20027
void marshal_VkMemoryRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryRequirements* forMarshaling);

void unmarshal_VkMemoryRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryRequirements* forUnmarshaling);

#define OP_vkBindBufferMemory 20028
#define OP_vkBindImageMemory 20029
#define OP_vkGetBufferMemoryRequirements 20030
#define OP_vkGetImageMemoryRequirements 20031
void marshal_VkSparseMemoryBind(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseMemoryBind* forMarshaling);

void unmarshal_VkSparseMemoryBind(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseMemoryBind* forUnmarshaling);

void marshal_VkSparseBufferMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseBufferMemoryBindInfo* forMarshaling);

void unmarshal_VkSparseBufferMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseBufferMemoryBindInfo* forUnmarshaling);

void marshal_VkSparseImageOpaqueMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageOpaqueMemoryBindInfo* forMarshaling);

void unmarshal_VkSparseImageOpaqueMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageOpaqueMemoryBindInfo* forUnmarshaling);

void marshal_VkImageSubresource(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageSubresource* forMarshaling);

void unmarshal_VkImageSubresource(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageSubresource* forUnmarshaling);

void marshal_VkSparseImageMemoryBind(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageMemoryBind* forMarshaling);

void unmarshal_VkSparseImageMemoryBind(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageMemoryBind* forUnmarshaling);

void marshal_VkSparseImageMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageMemoryBindInfo* forMarshaling);

void unmarshal_VkSparseImageMemoryBindInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageMemoryBindInfo* forUnmarshaling);

void marshal_VkBindSparseInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindSparseInfo* forMarshaling);

void unmarshal_VkBindSparseInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindSparseInfo* forUnmarshaling);

void marshal_VkSparseImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageFormatProperties* forMarshaling);

void unmarshal_VkSparseImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageFormatProperties* forUnmarshaling);

void marshal_VkSparseImageMemoryRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageMemoryRequirements* forMarshaling);

void unmarshal_VkSparseImageMemoryRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageMemoryRequirements* forUnmarshaling);

#define OP_vkGetImageSparseMemoryRequirements 20032
#define OP_vkGetPhysicalDeviceSparseImageFormatProperties 20033
#define OP_vkQueueBindSparse 20034
void marshal_VkFenceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFenceCreateInfo* forMarshaling);

void unmarshal_VkFenceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFenceCreateInfo* forUnmarshaling);

#define OP_vkCreateFence 20035
#define OP_vkDestroyFence 20036
#define OP_vkResetFences 20037
#define OP_vkGetFenceStatus 20038
#define OP_vkWaitForFences 20039
void marshal_VkSemaphoreCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreCreateInfo* forMarshaling);

void unmarshal_VkSemaphoreCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreCreateInfo* forUnmarshaling);

#define OP_vkCreateSemaphore 20040
#define OP_vkDestroySemaphore 20041
void marshal_VkEventCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkEventCreateInfo* forMarshaling);

void unmarshal_VkEventCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkEventCreateInfo* forUnmarshaling);

#define OP_vkCreateEvent 20042
#define OP_vkDestroyEvent 20043
#define OP_vkGetEventStatus 20044
#define OP_vkSetEvent 20045
#define OP_vkResetEvent 20046
void marshal_VkQueryPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueryPoolCreateInfo* forMarshaling);

void unmarshal_VkQueryPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueryPoolCreateInfo* forUnmarshaling);

#define OP_vkCreateQueryPool 20047
#define OP_vkDestroyQueryPool 20048
#define OP_vkGetQueryPoolResults 20049
void marshal_VkBufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferCreateInfo* forMarshaling);

void unmarshal_VkBufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferCreateInfo* forUnmarshaling);

#define OP_vkCreateBuffer 20050
#define OP_vkDestroyBuffer 20051
void marshal_VkBufferViewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferViewCreateInfo* forMarshaling);

void unmarshal_VkBufferViewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferViewCreateInfo* forUnmarshaling);

#define OP_vkCreateBufferView 20052
#define OP_vkDestroyBufferView 20053
void marshal_VkImageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageCreateInfo* forMarshaling);

void unmarshal_VkImageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageCreateInfo* forUnmarshaling);

void marshal_VkSubresourceLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubresourceLayout* forMarshaling);

void unmarshal_VkSubresourceLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubresourceLayout* forUnmarshaling);

#define OP_vkCreateImage 20054
#define OP_vkDestroyImage 20055
#define OP_vkGetImageSubresourceLayout 20056
void marshal_VkComponentMapping(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkComponentMapping* forMarshaling);

void unmarshal_VkComponentMapping(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkComponentMapping* forUnmarshaling);

void marshal_VkImageViewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageViewCreateInfo* forMarshaling);

void unmarshal_VkImageViewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageViewCreateInfo* forUnmarshaling);

#define OP_vkCreateImageView 20057
#define OP_vkDestroyImageView 20058
void marshal_VkShaderModuleCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkShaderModuleCreateInfo* forMarshaling);

void unmarshal_VkShaderModuleCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkShaderModuleCreateInfo* forUnmarshaling);

#define OP_vkCreateShaderModule 20059
#define OP_vkDestroyShaderModule 20060
void marshal_VkPipelineCacheCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCacheCreateInfo* forMarshaling);

void unmarshal_VkPipelineCacheCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCacheCreateInfo* forUnmarshaling);

#define OP_vkCreatePipelineCache 20061
#define OP_vkDestroyPipelineCache 20062
#define OP_vkGetPipelineCacheData 20063
#define OP_vkMergePipelineCaches 20064
void marshal_VkSpecializationMapEntry(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSpecializationMapEntry* forMarshaling);

void unmarshal_VkSpecializationMapEntry(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSpecializationMapEntry* forUnmarshaling);

void marshal_VkSpecializationInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSpecializationInfo* forMarshaling);

void unmarshal_VkSpecializationInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSpecializationInfo* forUnmarshaling);

void marshal_VkPipelineShaderStageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineShaderStageCreateInfo* forMarshaling);

void unmarshal_VkPipelineShaderStageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineShaderStageCreateInfo* forUnmarshaling);

void marshal_VkComputePipelineCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkComputePipelineCreateInfo* forMarshaling);

void unmarshal_VkComputePipelineCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkComputePipelineCreateInfo* forUnmarshaling);

void marshal_VkVertexInputBindingDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkVertexInputBindingDescription* forMarshaling);

void unmarshal_VkVertexInputBindingDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkVertexInputBindingDescription* forUnmarshaling);

void marshal_VkVertexInputAttributeDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkVertexInputAttributeDescription* forMarshaling);

void unmarshal_VkVertexInputAttributeDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkVertexInputAttributeDescription* forUnmarshaling);

void marshal_VkPipelineVertexInputStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineVertexInputStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineVertexInputStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineVertexInputStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineInputAssemblyStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineInputAssemblyStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineInputAssemblyStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineInputAssemblyStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineTessellationStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineTessellationStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineTessellationStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineTessellationStateCreateInfo* forUnmarshaling);

void marshal_VkViewport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkViewport* forMarshaling);

void unmarshal_VkViewport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkViewport* forUnmarshaling);

void marshal_VkPipelineViewportStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineViewportStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineRasterizationStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineRasterizationStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineMultisampleStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineMultisampleStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineMultisampleStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineMultisampleStateCreateInfo* forUnmarshaling);

void marshal_VkStencilOpState(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkStencilOpState* forMarshaling);

void unmarshal_VkStencilOpState(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkStencilOpState* forUnmarshaling);

void marshal_VkPipelineDepthStencilStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineDepthStencilStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineDepthStencilStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineDepthStencilStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineColorBlendAttachmentState(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineColorBlendAttachmentState* forMarshaling);

void unmarshal_VkPipelineColorBlendAttachmentState(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineColorBlendAttachmentState* forUnmarshaling);

void marshal_VkPipelineColorBlendStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineColorBlendStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineColorBlendStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineColorBlendStateCreateInfo* forUnmarshaling);

void marshal_VkPipelineDynamicStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineDynamicStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineDynamicStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineDynamicStateCreateInfo* forUnmarshaling);

void marshal_VkGraphicsPipelineCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGraphicsPipelineCreateInfo* forMarshaling);

void unmarshal_VkGraphicsPipelineCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGraphicsPipelineCreateInfo* forUnmarshaling);

#define OP_vkCreateGraphicsPipelines 20065
#define OP_vkCreateComputePipelines 20066
#define OP_vkDestroyPipeline 20067
void marshal_VkPushConstantRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPushConstantRange* forMarshaling);

void unmarshal_VkPushConstantRange(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPushConstantRange* forUnmarshaling);

void marshal_VkPipelineLayoutCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineLayoutCreateInfo* forMarshaling);

void unmarshal_VkPipelineLayoutCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineLayoutCreateInfo* forUnmarshaling);

#define OP_vkCreatePipelineLayout 20068
#define OP_vkDestroyPipelineLayout 20069
void marshal_VkSamplerCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerCreateInfo* forMarshaling);

void unmarshal_VkSamplerCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerCreateInfo* forUnmarshaling);

#define OP_vkCreateSampler 20070
#define OP_vkDestroySampler 20071
void marshal_VkCopyDescriptorSet(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyDescriptorSet* forMarshaling);

void unmarshal_VkCopyDescriptorSet(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyDescriptorSet* forUnmarshaling);

void marshal_VkDescriptorBufferInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorBufferInfo* forMarshaling);

void unmarshal_VkDescriptorBufferInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorBufferInfo* forUnmarshaling);

void marshal_VkDescriptorImageInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorImageInfo* forMarshaling);

void unmarshal_VkDescriptorImageInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorImageInfo* forUnmarshaling);

void marshal_VkDescriptorPoolSize(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorPoolSize* forMarshaling);

void unmarshal_VkDescriptorPoolSize(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorPoolSize* forUnmarshaling);

void marshal_VkDescriptorPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorPoolCreateInfo* forMarshaling);

void unmarshal_VkDescriptorPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorPoolCreateInfo* forUnmarshaling);

void marshal_VkDescriptorSetAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetAllocateInfo* forMarshaling);

void unmarshal_VkDescriptorSetAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetAllocateInfo* forUnmarshaling);

void marshal_VkDescriptorSetLayoutBinding(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetLayoutBinding* forMarshaling);

void unmarshal_VkDescriptorSetLayoutBinding(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetLayoutBinding* forUnmarshaling);

void marshal_VkDescriptorSetLayoutCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetLayoutCreateInfo* forMarshaling);

void unmarshal_VkDescriptorSetLayoutCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetLayoutCreateInfo* forUnmarshaling);

void marshal_VkWriteDescriptorSet(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWriteDescriptorSet* forMarshaling);

void unmarshal_VkWriteDescriptorSet(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWriteDescriptorSet* forUnmarshaling);

#define OP_vkCreateDescriptorSetLayout 20072
#define OP_vkDestroyDescriptorSetLayout 20073
#define OP_vkCreateDescriptorPool 20074
#define OP_vkDestroyDescriptorPool 20075
#define OP_vkResetDescriptorPool 20076
#define OP_vkAllocateDescriptorSets 20077
#define OP_vkFreeDescriptorSets 20078
#define OP_vkUpdateDescriptorSets 20079
void marshal_VkAttachmentDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentDescription* forMarshaling);

void unmarshal_VkAttachmentDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentDescription* forUnmarshaling);

void marshal_VkAttachmentReference(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentReference* forMarshaling);

void unmarshal_VkAttachmentReference(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentReference* forUnmarshaling);

void marshal_VkFramebufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFramebufferCreateInfo* forMarshaling);

void unmarshal_VkFramebufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFramebufferCreateInfo* forUnmarshaling);

void marshal_VkSubpassDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassDescription* forMarshaling);

void unmarshal_VkSubpassDescription(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassDescription* forUnmarshaling);

void marshal_VkSubpassDependency(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassDependency* forMarshaling);

void unmarshal_VkSubpassDependency(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassDependency* forUnmarshaling);

void marshal_VkRenderPassCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassCreateInfo* forMarshaling);

void unmarshal_VkRenderPassCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassCreateInfo* forUnmarshaling);

#define OP_vkCreateFramebuffer 20080
#define OP_vkDestroyFramebuffer 20081
#define OP_vkCreateRenderPass 20082
#define OP_vkDestroyRenderPass 20083
#define OP_vkGetRenderAreaGranularity 20084
void marshal_VkCommandPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandPoolCreateInfo* forMarshaling);

void unmarshal_VkCommandPoolCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandPoolCreateInfo* forUnmarshaling);

#define OP_vkCreateCommandPool 20085
#define OP_vkDestroyCommandPool 20086
#define OP_vkResetCommandPool 20087
void marshal_VkCommandBufferAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandBufferAllocateInfo* forMarshaling);

void unmarshal_VkCommandBufferAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandBufferAllocateInfo* forUnmarshaling);

void marshal_VkCommandBufferInheritanceInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandBufferInheritanceInfo* forMarshaling);

void unmarshal_VkCommandBufferInheritanceInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandBufferInheritanceInfo* forUnmarshaling);

void marshal_VkCommandBufferBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandBufferBeginInfo* forMarshaling);

void unmarshal_VkCommandBufferBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandBufferBeginInfo* forUnmarshaling);

#define OP_vkAllocateCommandBuffers 20088
#define OP_vkFreeCommandBuffers 20089
#define OP_vkBeginCommandBuffer 20090
#define OP_vkEndCommandBuffer 20091
#define OP_vkResetCommandBuffer 20092
void marshal_VkBufferCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferCopy* forMarshaling);

void unmarshal_VkBufferCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferCopy* forUnmarshaling);

void marshal_VkImageSubresourceLayers(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageSubresourceLayers* forMarshaling);

void unmarshal_VkImageSubresourceLayers(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageSubresourceLayers* forUnmarshaling);

void marshal_VkBufferImageCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferImageCopy* forMarshaling);

void unmarshal_VkBufferImageCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferImageCopy* forUnmarshaling);

void marshal_VkClearColorValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkClearColorValue* forMarshaling);

void unmarshal_VkClearColorValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkClearColorValue* forUnmarshaling);

void marshal_VkClearDepthStencilValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkClearDepthStencilValue* forMarshaling);

void unmarshal_VkClearDepthStencilValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkClearDepthStencilValue* forUnmarshaling);

void marshal_VkClearValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkClearValue* forMarshaling);

void unmarshal_VkClearValue(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkClearValue* forUnmarshaling);

void marshal_VkClearAttachment(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkClearAttachment* forMarshaling);

void unmarshal_VkClearAttachment(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkClearAttachment* forUnmarshaling);

void marshal_VkClearRect(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkClearRect* forMarshaling);

void unmarshal_VkClearRect(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkClearRect* forUnmarshaling);

void marshal_VkImageBlit(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageBlit* forMarshaling);

void unmarshal_VkImageBlit(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageBlit* forUnmarshaling);

void marshal_VkImageCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageCopy* forMarshaling);

void unmarshal_VkImageCopy(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageCopy* forUnmarshaling);

void marshal_VkImageResolve(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageResolve* forMarshaling);

void unmarshal_VkImageResolve(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageResolve* forUnmarshaling);

void marshal_VkRenderPassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassBeginInfo* forMarshaling);

void unmarshal_VkRenderPassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassBeginInfo* forUnmarshaling);

#define OP_vkCmdBindPipeline 20093
#define OP_vkCmdSetViewport 20094
#define OP_vkCmdSetScissor 20095
#define OP_vkCmdSetLineWidth 20096
#define OP_vkCmdSetDepthBias 20097
#define OP_vkCmdSetBlendConstants 20098
#define OP_vkCmdSetDepthBounds 20099
#define OP_vkCmdSetStencilCompareMask 20100
#define OP_vkCmdSetStencilWriteMask 20101
#define OP_vkCmdSetStencilReference 20102
#define OP_vkCmdBindDescriptorSets 20103
#define OP_vkCmdBindIndexBuffer 20104
#define OP_vkCmdBindVertexBuffers 20105
#define OP_vkCmdDraw 20106
#define OP_vkCmdDrawIndexed 20107
#define OP_vkCmdDrawIndirect 20108
#define OP_vkCmdDrawIndexedIndirect 20109
#define OP_vkCmdDispatch 20110
#define OP_vkCmdDispatchIndirect 20111
#define OP_vkCmdCopyBuffer 20112
#define OP_vkCmdCopyImage 20113
#define OP_vkCmdBlitImage 20114
#define OP_vkCmdCopyBufferToImage 20115
#define OP_vkCmdCopyImageToBuffer 20116
#define OP_vkCmdUpdateBuffer 20117
#define OP_vkCmdFillBuffer 20118
#define OP_vkCmdClearColorImage 20119
#define OP_vkCmdClearDepthStencilImage 20120
#define OP_vkCmdClearAttachments 20121
#define OP_vkCmdResolveImage 20122
#define OP_vkCmdSetEvent 20123
#define OP_vkCmdResetEvent 20124
#define OP_vkCmdWaitEvents 20125
#define OP_vkCmdPipelineBarrier 20126
#define OP_vkCmdBeginQuery 20127
#define OP_vkCmdEndQuery 20128
#define OP_vkCmdResetQueryPool 20129
#define OP_vkCmdWriteTimestamp 20130
#define OP_vkCmdCopyQueryPoolResults 20131
#define OP_vkCmdPushConstants 20132
#define OP_vkCmdBeginRenderPass 20133
#define OP_vkCmdNextSubpass 20134
#define OP_vkCmdEndRenderPass 20135
#define OP_vkCmdExecuteCommands 20136
#endif
#ifdef VK_VERSION_1_1
#define OP_vkEnumerateInstanceVersion 20137
void marshal_VkPhysicalDeviceSubgroupProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSubgroupProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceSubgroupProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSubgroupProperties* forUnmarshaling);

void marshal_VkBindBufferMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindBufferMemoryInfo* forMarshaling);

void unmarshal_VkBindBufferMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindBufferMemoryInfo* forUnmarshaling);

void marshal_VkBindImageMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindImageMemoryInfo* forMarshaling);

void unmarshal_VkBindImageMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindImageMemoryInfo* forUnmarshaling);

#define OP_vkBindBufferMemory2 20138
#define OP_vkBindImageMemory2 20139
void marshal_VkPhysicalDevice16BitStorageFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevice16BitStorageFeatures* forMarshaling);

void unmarshal_VkPhysicalDevice16BitStorageFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevice16BitStorageFeatures* forUnmarshaling);

void marshal_VkMemoryDedicatedRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryDedicatedRequirements* forMarshaling);

void unmarshal_VkMemoryDedicatedRequirements(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryDedicatedRequirements* forUnmarshaling);

void marshal_VkMemoryDedicatedAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryDedicatedAllocateInfo* forMarshaling);

void unmarshal_VkMemoryDedicatedAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryDedicatedAllocateInfo* forUnmarshaling);

void marshal_VkMemoryAllocateFlagsInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryAllocateFlagsInfo* forMarshaling);

void unmarshal_VkMemoryAllocateFlagsInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryAllocateFlagsInfo* forUnmarshaling);

void marshal_VkDeviceGroupRenderPassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupRenderPassBeginInfo* forMarshaling);

void unmarshal_VkDeviceGroupRenderPassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupRenderPassBeginInfo* forUnmarshaling);

void marshal_VkDeviceGroupCommandBufferBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupCommandBufferBeginInfo* forMarshaling);

void unmarshal_VkDeviceGroupCommandBufferBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupCommandBufferBeginInfo* forUnmarshaling);

void marshal_VkDeviceGroupSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupSubmitInfo* forMarshaling);

void unmarshal_VkDeviceGroupSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupSubmitInfo* forUnmarshaling);

void marshal_VkDeviceGroupBindSparseInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupBindSparseInfo* forMarshaling);

void unmarshal_VkDeviceGroupBindSparseInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupBindSparseInfo* forUnmarshaling);

#define OP_vkGetDeviceGroupPeerMemoryFeatures 20140
#define OP_vkCmdSetDeviceMask 20141
#define OP_vkCmdDispatchBase 20142
void marshal_VkBindBufferMemoryDeviceGroupInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindBufferMemoryDeviceGroupInfo* forMarshaling);

void unmarshal_VkBindBufferMemoryDeviceGroupInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindBufferMemoryDeviceGroupInfo* forUnmarshaling);

void marshal_VkBindImageMemoryDeviceGroupInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindImageMemoryDeviceGroupInfo* forMarshaling);

void unmarshal_VkBindImageMemoryDeviceGroupInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindImageMemoryDeviceGroupInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceGroupProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceGroupProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceGroupProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceGroupProperties* forUnmarshaling);

void marshal_VkDeviceGroupDeviceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupDeviceCreateInfo* forMarshaling);

void unmarshal_VkDeviceGroupDeviceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupDeviceCreateInfo* forUnmarshaling);

#define OP_vkEnumeratePhysicalDeviceGroups 20143
void marshal_VkBufferMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferMemoryRequirementsInfo2* forMarshaling);

void unmarshal_VkBufferMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferMemoryRequirementsInfo2* forUnmarshaling);

void marshal_VkImageMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageMemoryRequirementsInfo2* forMarshaling);

void unmarshal_VkImageMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageMemoryRequirementsInfo2* forUnmarshaling);

void marshal_VkImageSparseMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageSparseMemoryRequirementsInfo2* forMarshaling);

void unmarshal_VkImageSparseMemoryRequirementsInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageSparseMemoryRequirementsInfo2* forUnmarshaling);

void marshal_VkMemoryRequirements2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryRequirements2* forMarshaling);

void unmarshal_VkMemoryRequirements2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryRequirements2* forUnmarshaling);

void marshal_VkSparseImageMemoryRequirements2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageMemoryRequirements2* forMarshaling);

void unmarshal_VkSparseImageMemoryRequirements2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageMemoryRequirements2* forUnmarshaling);

#define OP_vkGetImageMemoryRequirements2 20144
#define OP_vkGetBufferMemoryRequirements2 20145
#define OP_vkGetImageSparseMemoryRequirements2 20146
void marshal_VkPhysicalDeviceFeatures2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFeatures2* forMarshaling);

void unmarshal_VkPhysicalDeviceFeatures2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFeatures2* forUnmarshaling);

void marshal_VkPhysicalDeviceProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceProperties2* forMarshaling);

void unmarshal_VkPhysicalDeviceProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceProperties2* forUnmarshaling);

void marshal_VkFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFormatProperties2* forMarshaling);

void unmarshal_VkFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFormatProperties2* forUnmarshaling);

void marshal_VkImageFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageFormatProperties2* forMarshaling);

void unmarshal_VkImageFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageFormatProperties2* forUnmarshaling);

void marshal_VkPhysicalDeviceImageFormatInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceImageFormatInfo2* forMarshaling);

void unmarshal_VkPhysicalDeviceImageFormatInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceImageFormatInfo2* forUnmarshaling);

void marshal_VkQueueFamilyProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueueFamilyProperties2* forMarshaling);

void unmarshal_VkQueueFamilyProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueueFamilyProperties2* forUnmarshaling);

void marshal_VkPhysicalDeviceMemoryProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMemoryProperties2* forMarshaling);

void unmarshal_VkPhysicalDeviceMemoryProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMemoryProperties2* forUnmarshaling);

void marshal_VkSparseImageFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSparseImageFormatProperties2* forMarshaling);

void unmarshal_VkSparseImageFormatProperties2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSparseImageFormatProperties2* forUnmarshaling);

void marshal_VkPhysicalDeviceSparseImageFormatInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSparseImageFormatInfo2* forMarshaling);

void unmarshal_VkPhysicalDeviceSparseImageFormatInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSparseImageFormatInfo2* forUnmarshaling);

#define OP_vkGetPhysicalDeviceFeatures2 20147
#define OP_vkGetPhysicalDeviceProperties2 20148
#define OP_vkGetPhysicalDeviceFormatProperties2 20149
#define OP_vkGetPhysicalDeviceImageFormatProperties2 20150
#define OP_vkGetPhysicalDeviceQueueFamilyProperties2 20151
#define OP_vkGetPhysicalDeviceMemoryProperties2 20152
#define OP_vkGetPhysicalDeviceSparseImageFormatProperties2 20153
#define OP_vkTrimCommandPool 20154
void marshal_VkPhysicalDevicePointClippingProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePointClippingProperties* forMarshaling);

void unmarshal_VkPhysicalDevicePointClippingProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePointClippingProperties* forUnmarshaling);

void marshal_VkInputAttachmentAspectReference(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkInputAttachmentAspectReference* forMarshaling);

void unmarshal_VkInputAttachmentAspectReference(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkInputAttachmentAspectReference* forUnmarshaling);

void marshal_VkRenderPassInputAttachmentAspectCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassInputAttachmentAspectCreateInfo* forMarshaling);

void unmarshal_VkRenderPassInputAttachmentAspectCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassInputAttachmentAspectCreateInfo* forUnmarshaling);

void marshal_VkImageViewUsageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageViewUsageCreateInfo* forMarshaling);

void unmarshal_VkImageViewUsageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageViewUsageCreateInfo* forUnmarshaling);

void marshal_VkPipelineTessellationDomainOriginStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineTessellationDomainOriginStateCreateInfo* forMarshaling);

void unmarshal_VkPipelineTessellationDomainOriginStateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineTessellationDomainOriginStateCreateInfo* forUnmarshaling);

void marshal_VkRenderPassMultiviewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassMultiviewCreateInfo* forMarshaling);

void unmarshal_VkRenderPassMultiviewCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassMultiviewCreateInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceMultiviewFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMultiviewFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceMultiviewFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMultiviewFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceMultiviewProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMultiviewProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceMultiviewProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMultiviewProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceVariablePointersFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVariablePointersFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceVariablePointersFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVariablePointersFeatures* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceVariablePointersFeatures, marshal_VkPhysicalDeviceVariablePointerFeatures);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceVariablePointersFeatures, unmarshal_VkPhysicalDeviceVariablePointerFeatures);

void marshal_VkPhysicalDeviceProtectedMemoryFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceProtectedMemoryFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceProtectedMemoryFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceProtectedMemoryFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceProtectedMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceProtectedMemoryProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceProtectedMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceProtectedMemoryProperties* forUnmarshaling);

void marshal_VkDeviceQueueInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceQueueInfo2* forMarshaling);

void unmarshal_VkDeviceQueueInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceQueueInfo2* forUnmarshaling);

void marshal_VkProtectedSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkProtectedSubmitInfo* forMarshaling);

void unmarshal_VkProtectedSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkProtectedSubmitInfo* forUnmarshaling);

#define OP_vkGetDeviceQueue2 20155
void marshal_VkSamplerYcbcrConversionCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerYcbcrConversionCreateInfo* forMarshaling);

void unmarshal_VkSamplerYcbcrConversionCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerYcbcrConversionCreateInfo* forUnmarshaling);

void marshal_VkSamplerYcbcrConversionInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerYcbcrConversionInfo* forMarshaling);

void unmarshal_VkSamplerYcbcrConversionInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerYcbcrConversionInfo* forUnmarshaling);

void marshal_VkBindImagePlaneMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindImagePlaneMemoryInfo* forMarshaling);

void unmarshal_VkBindImagePlaneMemoryInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindImagePlaneMemoryInfo* forUnmarshaling);

void marshal_VkImagePlaneMemoryRequirementsInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImagePlaneMemoryRequirementsInfo* forMarshaling);

void unmarshal_VkImagePlaneMemoryRequirementsInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImagePlaneMemoryRequirementsInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSamplerYcbcrConversionFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSamplerYcbcrConversionFeatures* forUnmarshaling);

void marshal_VkSamplerYcbcrConversionImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerYcbcrConversionImageFormatProperties* forMarshaling);

void unmarshal_VkSamplerYcbcrConversionImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerYcbcrConversionImageFormatProperties* forUnmarshaling);

#define OP_vkCreateSamplerYcbcrConversion 20156
#define OP_vkDestroySamplerYcbcrConversion 20157
void marshal_VkDescriptorUpdateTemplateEntry(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorUpdateTemplateEntry* forMarshaling);

void unmarshal_VkDescriptorUpdateTemplateEntry(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorUpdateTemplateEntry* forUnmarshaling);

void marshal_VkDescriptorUpdateTemplateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorUpdateTemplateCreateInfo* forMarshaling);

void unmarshal_VkDescriptorUpdateTemplateCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorUpdateTemplateCreateInfo* forUnmarshaling);

#define OP_vkCreateDescriptorUpdateTemplate 20158
#define OP_vkDestroyDescriptorUpdateTemplate 20159
#define OP_vkUpdateDescriptorSetWithTemplate 20160
void marshal_VkExternalMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalMemoryProperties* forMarshaling);

void unmarshal_VkExternalMemoryProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalMemoryProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceExternalImageFormatInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExternalImageFormatInfo* forMarshaling);

void unmarshal_VkPhysicalDeviceExternalImageFormatInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExternalImageFormatInfo* forUnmarshaling);

void marshal_VkExternalImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalImageFormatProperties* forMarshaling);

void unmarshal_VkExternalImageFormatProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalImageFormatProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceExternalBufferInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExternalBufferInfo* forMarshaling);

void unmarshal_VkPhysicalDeviceExternalBufferInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExternalBufferInfo* forUnmarshaling);

void marshal_VkExternalBufferProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalBufferProperties* forMarshaling);

void unmarshal_VkExternalBufferProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalBufferProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceIDProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceIDProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceIDProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceIDProperties* forUnmarshaling);

#define OP_vkGetPhysicalDeviceExternalBufferProperties 20161
void marshal_VkExternalMemoryImageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalMemoryImageCreateInfo* forMarshaling);

void unmarshal_VkExternalMemoryImageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalMemoryImageCreateInfo* forUnmarshaling);

void marshal_VkExternalMemoryBufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalMemoryBufferCreateInfo* forMarshaling);

void unmarshal_VkExternalMemoryBufferCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalMemoryBufferCreateInfo* forUnmarshaling);

void marshal_VkExportMemoryAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportMemoryAllocateInfo* forMarshaling);

void unmarshal_VkExportMemoryAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportMemoryAllocateInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceExternalFenceInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExternalFenceInfo* forMarshaling);

void unmarshal_VkPhysicalDeviceExternalFenceInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExternalFenceInfo* forUnmarshaling);

void marshal_VkExternalFenceProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalFenceProperties* forMarshaling);

void unmarshal_VkExternalFenceProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalFenceProperties* forUnmarshaling);

#define OP_vkGetPhysicalDeviceExternalFenceProperties 20162
void marshal_VkExportFenceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportFenceCreateInfo* forMarshaling);

void unmarshal_VkExportFenceCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportFenceCreateInfo* forUnmarshaling);

void marshal_VkExportSemaphoreCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportSemaphoreCreateInfo* forMarshaling);

void unmarshal_VkExportSemaphoreCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportSemaphoreCreateInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceExternalSemaphoreInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExternalSemaphoreInfo* forMarshaling);

void unmarshal_VkPhysicalDeviceExternalSemaphoreInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExternalSemaphoreInfo* forUnmarshaling);

void marshal_VkExternalSemaphoreProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalSemaphoreProperties* forMarshaling);

void unmarshal_VkExternalSemaphoreProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalSemaphoreProperties* forUnmarshaling);

#define OP_vkGetPhysicalDeviceExternalSemaphoreProperties 20163
void marshal_VkPhysicalDeviceMaintenance3Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMaintenance3Properties* forMarshaling);

void unmarshal_VkPhysicalDeviceMaintenance3Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMaintenance3Properties* forUnmarshaling);

void marshal_VkDescriptorSetLayoutSupport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetLayoutSupport* forMarshaling);

void unmarshal_VkDescriptorSetLayoutSupport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetLayoutSupport* forUnmarshaling);

#define OP_vkGetDescriptorSetLayoutSupport 20164
void marshal_VkPhysicalDeviceShaderDrawParametersFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderDrawParametersFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderDrawParametersFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderDrawParametersFeatures* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceShaderDrawParametersFeatures, marshal_VkPhysicalDeviceShaderDrawParameterFeatures);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceShaderDrawParametersFeatures, unmarshal_VkPhysicalDeviceShaderDrawParameterFeatures);

#endif
#ifdef VK_VERSION_1_2
void marshal_VkPhysicalDeviceVulkan11Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVulkan11Features* forMarshaling);

void unmarshal_VkPhysicalDeviceVulkan11Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVulkan11Features* forUnmarshaling);

void marshal_VkPhysicalDeviceVulkan11Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVulkan11Properties* forMarshaling);

void unmarshal_VkPhysicalDeviceVulkan11Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVulkan11Properties* forUnmarshaling);

void marshal_VkPhysicalDeviceVulkan12Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVulkan12Features* forMarshaling);

void unmarshal_VkPhysicalDeviceVulkan12Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVulkan12Features* forUnmarshaling);

void marshal_VkConformanceVersion(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkConformanceVersion* forMarshaling);

void unmarshal_VkConformanceVersion(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkConformanceVersion* forUnmarshaling);

void marshal_VkPhysicalDeviceVulkan12Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVulkan12Properties* forMarshaling);

void unmarshal_VkPhysicalDeviceVulkan12Properties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVulkan12Properties* forUnmarshaling);

void marshal_VkImageFormatListCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageFormatListCreateInfo* forMarshaling);

void unmarshal_VkImageFormatListCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageFormatListCreateInfo* forUnmarshaling);

#define OP_vkCmdDrawIndirectCount 282774587
#define OP_vkCmdDrawIndexedIndirectCount 245204359
void marshal_VkAttachmentDescription2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentDescription2* forMarshaling);

void unmarshal_VkAttachmentDescription2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentDescription2* forUnmarshaling);

void marshal_VkAttachmentReference2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentReference2* forMarshaling);

void unmarshal_VkAttachmentReference2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentReference2* forUnmarshaling);

void marshal_VkSubpassDescription2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassDescription2* forMarshaling);

void unmarshal_VkSubpassDescription2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassDescription2* forUnmarshaling);

void marshal_VkSubpassDependency2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassDependency2* forMarshaling);

void unmarshal_VkSubpassDependency2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassDependency2* forUnmarshaling);

void marshal_VkRenderPassCreateInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassCreateInfo2* forMarshaling);

void unmarshal_VkRenderPassCreateInfo2(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassCreateInfo2* forUnmarshaling);

void marshal_VkSubpassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassBeginInfo* forMarshaling);

void unmarshal_VkSubpassBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassBeginInfo* forUnmarshaling);

void marshal_VkSubpassEndInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassEndInfo* forMarshaling);

void unmarshal_VkSubpassEndInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassEndInfo* forUnmarshaling);

#define OP_vkCreateRenderPass2 279590827
#define OP_vkCmdBeginRenderPass2 235222847
#define OP_vkCmdNextSubpass2 244873750
#define OP_vkCmdEndRenderPass2 221297834
void marshal_VkPhysicalDevice8BitStorageFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevice8BitStorageFeatures* forMarshaling);

void unmarshal_VkPhysicalDevice8BitStorageFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevice8BitStorageFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceDriverProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDriverProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceDriverProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDriverProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceShaderAtomicInt64Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderAtomicInt64Features* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderAtomicInt64Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderAtomicInt64Features* forUnmarshaling);

void marshal_VkPhysicalDeviceShaderFloat16Int8Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderFloat16Int8Features* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderFloat16Int8Features(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderFloat16Int8Features* forUnmarshaling);

void marshal_VkPhysicalDeviceFloatControlsProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFloatControlsProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceFloatControlsProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFloatControlsProperties* forUnmarshaling);

void marshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetLayoutBindingFlagsCreateInfo* forMarshaling);

void unmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetLayoutBindingFlagsCreateInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceDescriptorIndexingFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDescriptorIndexingFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceDescriptorIndexingFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDescriptorIndexingFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceDescriptorIndexingProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDescriptorIndexingProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceDescriptorIndexingProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDescriptorIndexingProperties* forUnmarshaling);

void marshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetVariableDescriptorCountAllocateInfo* forMarshaling);

void unmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetVariableDescriptorCountAllocateInfo* forUnmarshaling);

void marshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorSetVariableDescriptorCountLayoutSupport* forMarshaling);

void unmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorSetVariableDescriptorCountLayoutSupport* forUnmarshaling);

void marshal_VkSubpassDescriptionDepthStencilResolve(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassDescriptionDepthStencilResolve* forMarshaling);

void unmarshal_VkSubpassDescriptionDepthStencilResolve(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassDescriptionDepthStencilResolve* forUnmarshaling);

void marshal_VkPhysicalDeviceDepthStencilResolveProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDepthStencilResolveProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceDepthStencilResolveProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDepthStencilResolveProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceScalarBlockLayoutFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceScalarBlockLayoutFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceScalarBlockLayoutFeatures* forUnmarshaling);

void marshal_VkImageStencilUsageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageStencilUsageCreateInfo* forMarshaling);

void unmarshal_VkImageStencilUsageCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageStencilUsageCreateInfo* forUnmarshaling);

void marshal_VkSamplerReductionModeCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerReductionModeCreateInfo* forMarshaling);

void unmarshal_VkSamplerReductionModeCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerReductionModeCreateInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSamplerFilterMinmaxProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSamplerFilterMinmaxProperties* forUnmarshaling);

void marshal_VkPhysicalDeviceVulkanMemoryModelFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVulkanMemoryModelFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVulkanMemoryModelFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceImagelessFramebufferFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceImagelessFramebufferFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceImagelessFramebufferFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceImagelessFramebufferFeatures* forUnmarshaling);

void marshal_VkFramebufferAttachmentImageInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFramebufferAttachmentImageInfo* forMarshaling);

void unmarshal_VkFramebufferAttachmentImageInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFramebufferAttachmentImageInfo* forUnmarshaling);

void marshal_VkFramebufferAttachmentsCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFramebufferAttachmentsCreateInfo* forMarshaling);

void unmarshal_VkFramebufferAttachmentsCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFramebufferAttachmentsCreateInfo* forUnmarshaling);

void marshal_VkRenderPassAttachmentBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassAttachmentBeginInfo* forMarshaling);

void unmarshal_VkRenderPassAttachmentBeginInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassAttachmentBeginInfo* forUnmarshaling);

void marshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceUniformBufferStandardLayoutFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceUniformBufferStandardLayoutFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* forUnmarshaling);

void marshal_VkAttachmentReferenceStencilLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentReferenceStencilLayout* forMarshaling);

void unmarshal_VkAttachmentReferenceStencilLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentReferenceStencilLayout* forUnmarshaling);

void marshal_VkAttachmentDescriptionStencilLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentDescriptionStencilLayout* forMarshaling);

void unmarshal_VkAttachmentDescriptionStencilLayout(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentDescriptionStencilLayout* forUnmarshaling);

void marshal_VkPhysicalDeviceHostQueryResetFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceHostQueryResetFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceHostQueryResetFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceHostQueryResetFeatures* forUnmarshaling);

#define OP_vkResetQueryPool 252097672
void marshal_VkPhysicalDeviceTimelineSemaphoreFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTimelineSemaphoreFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTimelineSemaphoreFeatures* forUnmarshaling);

void marshal_VkPhysicalDeviceTimelineSemaphoreProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTimelineSemaphoreProperties* forMarshaling);

void unmarshal_VkPhysicalDeviceTimelineSemaphoreProperties(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTimelineSemaphoreProperties* forUnmarshaling);

void marshal_VkSemaphoreTypeCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreTypeCreateInfo* forMarshaling);

void unmarshal_VkSemaphoreTypeCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreTypeCreateInfo* forUnmarshaling);

void marshal_VkTimelineSemaphoreSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkTimelineSemaphoreSubmitInfo* forMarshaling);

void unmarshal_VkTimelineSemaphoreSubmitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkTimelineSemaphoreSubmitInfo* forUnmarshaling);

void marshal_VkSemaphoreWaitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreWaitInfo* forMarshaling);

void unmarshal_VkSemaphoreWaitInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreWaitInfo* forUnmarshaling);

void marshal_VkSemaphoreSignalInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreSignalInfo* forMarshaling);

void unmarshal_VkSemaphoreSignalInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreSignalInfo* forUnmarshaling);

#define OP_vkGetSemaphoreCounterValue 267066974
#define OP_vkWaitSemaphores 224777382
#define OP_vkSignalSemaphore 271024127
void marshal_VkPhysicalDeviceBufferDeviceAddressFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceBufferDeviceAddressFeatures* forMarshaling);

void unmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceBufferDeviceAddressFeatures* forUnmarshaling);

void marshal_VkBufferDeviceAddressInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferDeviceAddressInfo* forMarshaling);

void unmarshal_VkBufferDeviceAddressInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferDeviceAddressInfo* forUnmarshaling);

void marshal_VkBufferOpaqueCaptureAddressCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferOpaqueCaptureAddressCreateInfo* forMarshaling);

void unmarshal_VkBufferOpaqueCaptureAddressCreateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferOpaqueCaptureAddressCreateInfo* forUnmarshaling);

void marshal_VkMemoryOpaqueCaptureAddressAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryOpaqueCaptureAddressAllocateInfo* forMarshaling);

void unmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryOpaqueCaptureAddressAllocateInfo* forUnmarshaling);

void marshal_VkDeviceMemoryOpaqueCaptureAddressInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceMemoryOpaqueCaptureAddressInfo* forMarshaling);

void unmarshal_VkDeviceMemoryOpaqueCaptureAddressInfo(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceMemoryOpaqueCaptureAddressInfo* forUnmarshaling);

#define OP_vkGetBufferDeviceAddress 222632266
#define OP_vkGetBufferOpaqueCaptureAddress 230188231
#define OP_vkGetDeviceMemoryOpaqueCaptureAddress 260620079
#endif
#ifdef VK_KHR_surface
void marshal_VkSurfaceCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceCapabilitiesKHR* forMarshaling);

void unmarshal_VkSurfaceCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceCapabilitiesKHR* forUnmarshaling);

void marshal_VkSurfaceFormatKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceFormatKHR* forMarshaling);

void unmarshal_VkSurfaceFormatKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceFormatKHR* forUnmarshaling);

#define OP_vkDestroySurfaceKHR 20165
#define OP_vkGetPhysicalDeviceSurfaceSupportKHR 20166
#define OP_vkGetPhysicalDeviceSurfaceCapabilitiesKHR 20167
#define OP_vkGetPhysicalDeviceSurfaceFormatsKHR 20168
#define OP_vkGetPhysicalDeviceSurfacePresentModesKHR 20169
#endif
#ifdef VK_KHR_swapchain
void marshal_VkSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSwapchainCreateInfoKHR* forMarshaling);

void unmarshal_VkSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSwapchainCreateInfoKHR* forUnmarshaling);

void marshal_VkPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentInfoKHR* forMarshaling);

void unmarshal_VkPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentInfoKHR* forUnmarshaling);

#define OP_vkCreateSwapchainKHR 20170
#define OP_vkDestroySwapchainKHR 20171
#define OP_vkGetSwapchainImagesKHR 20172
#define OP_vkAcquireNextImageKHR 20173
#define OP_vkQueuePresentKHR 20174
void marshal_VkImageSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageSwapchainCreateInfoKHR* forMarshaling);

void unmarshal_VkImageSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageSwapchainCreateInfoKHR* forUnmarshaling);

void marshal_VkBindImageMemorySwapchainInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindImageMemorySwapchainInfoKHR* forMarshaling);

void unmarshal_VkBindImageMemorySwapchainInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindImageMemorySwapchainInfoKHR* forUnmarshaling);

void marshal_VkAcquireNextImageInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAcquireNextImageInfoKHR* forMarshaling);

void unmarshal_VkAcquireNextImageInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAcquireNextImageInfoKHR* forUnmarshaling);

void marshal_VkDeviceGroupPresentCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupPresentCapabilitiesKHR* forMarshaling);

void unmarshal_VkDeviceGroupPresentCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupPresentCapabilitiesKHR* forUnmarshaling);

void marshal_VkDeviceGroupPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupPresentInfoKHR* forMarshaling);

void unmarshal_VkDeviceGroupPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupPresentInfoKHR* forUnmarshaling);

void marshal_VkDeviceGroupSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceGroupSwapchainCreateInfoKHR* forMarshaling);

void unmarshal_VkDeviceGroupSwapchainCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceGroupSwapchainCreateInfoKHR* forUnmarshaling);

#define OP_vkGetDeviceGroupPresentCapabilitiesKHR 20175
#define OP_vkGetDeviceGroupSurfacePresentModesKHR 20176
#define OP_vkGetPhysicalDevicePresentRectanglesKHR 20177
#define OP_vkAcquireNextImage2KHR 20178
#endif
#ifdef VK_KHR_display
void marshal_VkDisplayModeParametersKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayModeParametersKHR* forMarshaling);

void unmarshal_VkDisplayModeParametersKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayModeParametersKHR* forUnmarshaling);

void marshal_VkDisplayModeCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayModeCreateInfoKHR* forMarshaling);

void unmarshal_VkDisplayModeCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayModeCreateInfoKHR* forUnmarshaling);

void marshal_VkDisplayModePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayModePropertiesKHR* forMarshaling);

void unmarshal_VkDisplayModePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayModePropertiesKHR* forUnmarshaling);

void marshal_VkDisplayPlaneCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPlaneCapabilitiesKHR* forMarshaling);

void unmarshal_VkDisplayPlaneCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPlaneCapabilitiesKHR* forUnmarshaling);

void marshal_VkDisplayPlanePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPlanePropertiesKHR* forMarshaling);

void unmarshal_VkDisplayPlanePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPlanePropertiesKHR* forUnmarshaling);

void marshal_VkDisplayPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPropertiesKHR* forMarshaling);

void unmarshal_VkDisplayPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPropertiesKHR* forUnmarshaling);

void marshal_VkDisplaySurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplaySurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkDisplaySurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplaySurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkGetPhysicalDeviceDisplayPropertiesKHR 20179
#define OP_vkGetPhysicalDeviceDisplayPlanePropertiesKHR 20180
#define OP_vkGetDisplayPlaneSupportedDisplaysKHR 20181
#define OP_vkGetDisplayModePropertiesKHR 20182
#define OP_vkCreateDisplayModeKHR 20183
#define OP_vkGetDisplayPlaneCapabilitiesKHR 20184
#define OP_vkCreateDisplayPlaneSurfaceKHR 20185
#endif
#ifdef VK_KHR_display_swapchain
void marshal_VkDisplayPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPresentInfoKHR* forMarshaling);

void unmarshal_VkDisplayPresentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPresentInfoKHR* forUnmarshaling);

#define OP_vkCreateSharedSwapchainsKHR 20186
#endif
#ifdef VK_KHR_xlib_surface
void marshal_VkXlibSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkXlibSurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkXlibSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkXlibSurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkCreateXlibSurfaceKHR 20187
#define OP_vkGetPhysicalDeviceXlibPresentationSupportKHR 20188
#endif
#ifdef VK_KHR_xcb_surface
void marshal_VkXcbSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkXcbSurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkXcbSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkXcbSurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkCreateXcbSurfaceKHR 20189
#define OP_vkGetPhysicalDeviceXcbPresentationSupportKHR 20190
#endif
#ifdef VK_KHR_wayland_surface
void marshal_VkWaylandSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWaylandSurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkWaylandSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWaylandSurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkCreateWaylandSurfaceKHR 20191
#define OP_vkGetPhysicalDeviceWaylandPresentationSupportKHR 20192
#endif
#ifdef VK_KHR_android_surface
void marshal_VkAndroidSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAndroidSurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkAndroidSurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAndroidSurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkCreateAndroidSurfaceKHR 20195
#endif
#ifdef VK_KHR_win32_surface
void marshal_VkWin32SurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWin32SurfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkWin32SurfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWin32SurfaceCreateInfoKHR* forUnmarshaling);

#define OP_vkCreateWin32SurfaceKHR 20196
#define OP_vkGetPhysicalDeviceWin32PresentationSupportKHR 20197
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(marshal_VkRenderPassMultiviewCreateInfo, marshal_VkRenderPassMultiviewCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkRenderPassMultiviewCreateInfo, unmarshal_VkRenderPassMultiviewCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceMultiviewFeatures, marshal_VkPhysicalDeviceMultiviewFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceMultiviewFeatures, unmarshal_VkPhysicalDeviceMultiviewFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceMultiviewProperties, marshal_VkPhysicalDeviceMultiviewPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceMultiviewProperties, unmarshal_VkPhysicalDeviceMultiviewPropertiesKHR);

#endif
#ifdef VK_KHR_get_physical_device_properties2
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceFeatures2, marshal_VkPhysicalDeviceFeatures2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceFeatures2, unmarshal_VkPhysicalDeviceFeatures2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceProperties2, marshal_VkPhysicalDeviceProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceProperties2, unmarshal_VkPhysicalDeviceProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkFormatProperties2, marshal_VkFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkFormatProperties2, unmarshal_VkFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkImageFormatProperties2, marshal_VkImageFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageFormatProperties2, unmarshal_VkImageFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceImageFormatInfo2, marshal_VkPhysicalDeviceImageFormatInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceImageFormatInfo2, unmarshal_VkPhysicalDeviceImageFormatInfo2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkQueueFamilyProperties2, marshal_VkQueueFamilyProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkQueueFamilyProperties2, unmarshal_VkQueueFamilyProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceMemoryProperties2, marshal_VkPhysicalDeviceMemoryProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceMemoryProperties2, unmarshal_VkPhysicalDeviceMemoryProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSparseImageFormatProperties2, marshal_VkSparseImageFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSparseImageFormatProperties2, unmarshal_VkSparseImageFormatProperties2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceSparseImageFormatInfo2, marshal_VkPhysicalDeviceSparseImageFormatInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceSparseImageFormatInfo2, unmarshal_VkPhysicalDeviceSparseImageFormatInfo2KHR);

#define OP_vkGetPhysicalDeviceFeatures2KHR 20198
#define OP_vkGetPhysicalDeviceProperties2KHR 20199
#define OP_vkGetPhysicalDeviceFormatProperties2KHR 20200
#define OP_vkGetPhysicalDeviceImageFormatProperties2KHR 20201
#define OP_vkGetPhysicalDeviceQueueFamilyProperties2KHR 20202
#define OP_vkGetPhysicalDeviceMemoryProperties2KHR 20203
#define OP_vkGetPhysicalDeviceSparseImageFormatProperties2KHR 20204
#endif
#ifdef VK_KHR_device_group
DEFINE_ALIAS_FUNCTION(marshal_VkMemoryAllocateFlagsInfo, marshal_VkMemoryAllocateFlagsInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkMemoryAllocateFlagsInfo, unmarshal_VkMemoryAllocateFlagsInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceGroupRenderPassBeginInfo, marshal_VkDeviceGroupRenderPassBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceGroupRenderPassBeginInfo, unmarshal_VkDeviceGroupRenderPassBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceGroupCommandBufferBeginInfo, marshal_VkDeviceGroupCommandBufferBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceGroupCommandBufferBeginInfo, unmarshal_VkDeviceGroupCommandBufferBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceGroupSubmitInfo, marshal_VkDeviceGroupSubmitInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceGroupSubmitInfo, unmarshal_VkDeviceGroupSubmitInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceGroupBindSparseInfo, marshal_VkDeviceGroupBindSparseInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceGroupBindSparseInfo, unmarshal_VkDeviceGroupBindSparseInfoKHR);

#define OP_vkGetDeviceGroupPeerMemoryFeaturesKHR 20205
#define OP_vkCmdSetDeviceMaskKHR 20206
#define OP_vkCmdDispatchBaseKHR 20207
DEFINE_ALIAS_FUNCTION(marshal_VkBindBufferMemoryDeviceGroupInfo, marshal_VkBindBufferMemoryDeviceGroupInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBindBufferMemoryDeviceGroupInfo, unmarshal_VkBindBufferMemoryDeviceGroupInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkBindImageMemoryDeviceGroupInfo, marshal_VkBindImageMemoryDeviceGroupInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBindImageMemoryDeviceGroupInfo, unmarshal_VkBindImageMemoryDeviceGroupInfoKHR);

#endif
#ifdef VK_KHR_shader_draw_parameters
#endif
#ifdef VK_KHR_maintenance1
#define OP_vkTrimCommandPoolKHR 20208
#endif
#ifdef VK_KHR_device_group_creation
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceGroupProperties, marshal_VkPhysicalDeviceGroupPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceGroupProperties, unmarshal_VkPhysicalDeviceGroupPropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceGroupDeviceCreateInfo, marshal_VkDeviceGroupDeviceCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceGroupDeviceCreateInfo, unmarshal_VkDeviceGroupDeviceCreateInfoKHR);

#define OP_vkEnumeratePhysicalDeviceGroupsKHR 20209
#endif
#ifdef VK_KHR_external_memory_capabilities
DEFINE_ALIAS_FUNCTION(marshal_VkExternalMemoryProperties, marshal_VkExternalMemoryPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalMemoryProperties, unmarshal_VkExternalMemoryPropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceExternalImageFormatInfo, marshal_VkPhysicalDeviceExternalImageFormatInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceExternalImageFormatInfo, unmarshal_VkPhysicalDeviceExternalImageFormatInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExternalImageFormatProperties, marshal_VkExternalImageFormatPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalImageFormatProperties, unmarshal_VkExternalImageFormatPropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceExternalBufferInfo, marshal_VkPhysicalDeviceExternalBufferInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceExternalBufferInfo, unmarshal_VkPhysicalDeviceExternalBufferInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExternalBufferProperties, marshal_VkExternalBufferPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalBufferProperties, unmarshal_VkExternalBufferPropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceIDProperties, marshal_VkPhysicalDeviceIDPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceIDProperties, unmarshal_VkPhysicalDeviceIDPropertiesKHR);

#define OP_vkGetPhysicalDeviceExternalBufferPropertiesKHR 20210
#endif
#ifdef VK_KHR_external_memory
DEFINE_ALIAS_FUNCTION(marshal_VkExternalMemoryImageCreateInfo, marshal_VkExternalMemoryImageCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalMemoryImageCreateInfo, unmarshal_VkExternalMemoryImageCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExternalMemoryBufferCreateInfo, marshal_VkExternalMemoryBufferCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalMemoryBufferCreateInfo, unmarshal_VkExternalMemoryBufferCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExportMemoryAllocateInfo, marshal_VkExportMemoryAllocateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExportMemoryAllocateInfo, unmarshal_VkExportMemoryAllocateInfoKHR);

#endif
#ifdef VK_KHR_external_memory_win32
void marshal_VkImportMemoryWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportMemoryWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkImportMemoryWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportMemoryWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkExportMemoryWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportMemoryWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkExportMemoryWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportMemoryWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkMemoryWin32HandlePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryWin32HandlePropertiesKHR* forMarshaling);

void unmarshal_VkMemoryWin32HandlePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryWin32HandlePropertiesKHR* forUnmarshaling);

void marshal_VkMemoryGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryGetWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkMemoryGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryGetWin32HandleInfoKHR* forUnmarshaling);

#define OP_vkGetMemoryWin32HandleKHR 20211
#define OP_vkGetMemoryWin32HandlePropertiesKHR 20212
#endif
#ifdef VK_KHR_external_memory_fd
void marshal_VkImportMemoryFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportMemoryFdInfoKHR* forMarshaling);

void unmarshal_VkImportMemoryFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportMemoryFdInfoKHR* forUnmarshaling);

void marshal_VkMemoryFdPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryFdPropertiesKHR* forMarshaling);

void unmarshal_VkMemoryFdPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryFdPropertiesKHR* forUnmarshaling);

void marshal_VkMemoryGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryGetFdInfoKHR* forMarshaling);

void unmarshal_VkMemoryGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryGetFdInfoKHR* forUnmarshaling);

#define OP_vkGetMemoryFdKHR 20213
#define OP_vkGetMemoryFdPropertiesKHR 20214
#endif
#ifdef VK_KHR_win32_keyed_mutex
void marshal_VkWin32KeyedMutexAcquireReleaseInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWin32KeyedMutexAcquireReleaseInfoKHR* forMarshaling);

void unmarshal_VkWin32KeyedMutexAcquireReleaseInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWin32KeyedMutexAcquireReleaseInfoKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_external_semaphore_capabilities
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceExternalSemaphoreInfo, marshal_VkPhysicalDeviceExternalSemaphoreInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceExternalSemaphoreInfo, unmarshal_VkPhysicalDeviceExternalSemaphoreInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExternalSemaphoreProperties, marshal_VkExternalSemaphorePropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalSemaphoreProperties, unmarshal_VkExternalSemaphorePropertiesKHR);

#define OP_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR 20215
#endif
#ifdef VK_KHR_external_semaphore
DEFINE_ALIAS_FUNCTION(marshal_VkExportSemaphoreCreateInfo, marshal_VkExportSemaphoreCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExportSemaphoreCreateInfo, unmarshal_VkExportSemaphoreCreateInfoKHR);

#endif
#ifdef VK_KHR_external_semaphore_win32
void marshal_VkImportSemaphoreWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportSemaphoreWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkImportSemaphoreWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportSemaphoreWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkExportSemaphoreWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportSemaphoreWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkExportSemaphoreWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportSemaphoreWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkD3D12FenceSubmitInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkD3D12FenceSubmitInfoKHR* forMarshaling);

void unmarshal_VkD3D12FenceSubmitInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkD3D12FenceSubmitInfoKHR* forUnmarshaling);

void marshal_VkSemaphoreGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreGetWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkSemaphoreGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreGetWin32HandleInfoKHR* forUnmarshaling);

#define OP_vkImportSemaphoreWin32HandleKHR 20216
#define OP_vkGetSemaphoreWin32HandleKHR 20217
#endif
#ifdef VK_KHR_external_semaphore_fd
void marshal_VkImportSemaphoreFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportSemaphoreFdInfoKHR* forMarshaling);

void unmarshal_VkImportSemaphoreFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportSemaphoreFdInfoKHR* forUnmarshaling);

void marshal_VkSemaphoreGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSemaphoreGetFdInfoKHR* forMarshaling);

void unmarshal_VkSemaphoreGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSemaphoreGetFdInfoKHR* forUnmarshaling);

#define OP_vkImportSemaphoreFdKHR 20218
#define OP_vkGetSemaphoreFdKHR 20219
#endif
#ifdef VK_KHR_push_descriptor
void marshal_VkPhysicalDevicePushDescriptorPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePushDescriptorPropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePushDescriptorPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePushDescriptorPropertiesKHR* forUnmarshaling);

#define OP_vkCmdPushDescriptorSetKHR 20220
#define OP_vkCmdPushDescriptorSetWithTemplateKHR 20221
#endif
#ifdef VK_KHR_shader_float16_int8
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceShaderFloat16Int8Features, marshal_VkPhysicalDeviceShaderFloat16Int8FeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceShaderFloat16Int8Features, unmarshal_VkPhysicalDeviceShaderFloat16Int8FeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceShaderFloat16Int8Features, marshal_VkPhysicalDeviceFloat16Int8FeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceShaderFloat16Int8Features, unmarshal_VkPhysicalDeviceFloat16Int8FeaturesKHR);

#endif
#ifdef VK_KHR_16bit_storage
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDevice16BitStorageFeatures, marshal_VkPhysicalDevice16BitStorageFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDevice16BitStorageFeatures, unmarshal_VkPhysicalDevice16BitStorageFeaturesKHR);

#endif
#ifdef VK_KHR_incremental_present
void marshal_VkRectLayerKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRectLayerKHR* forMarshaling);

void unmarshal_VkRectLayerKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRectLayerKHR* forUnmarshaling);

void marshal_VkPresentRegionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentRegionKHR* forMarshaling);

void unmarshal_VkPresentRegionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentRegionKHR* forUnmarshaling);

void marshal_VkPresentRegionsKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentRegionsKHR* forMarshaling);

void unmarshal_VkPresentRegionsKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentRegionsKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_descriptor_update_template
DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorUpdateTemplateEntry, marshal_VkDescriptorUpdateTemplateEntryKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorUpdateTemplateEntry, unmarshal_VkDescriptorUpdateTemplateEntryKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorUpdateTemplateCreateInfo, marshal_VkDescriptorUpdateTemplateCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorUpdateTemplateCreateInfo, unmarshal_VkDescriptorUpdateTemplateCreateInfoKHR);

#define OP_vkCreateDescriptorUpdateTemplateKHR 20222
#define OP_vkDestroyDescriptorUpdateTemplateKHR 20223
#define OP_vkUpdateDescriptorSetWithTemplateKHR 20224
#endif
#ifdef VK_KHR_imageless_framebuffer
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceImagelessFramebufferFeatures, marshal_VkPhysicalDeviceImagelessFramebufferFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceImagelessFramebufferFeatures, unmarshal_VkPhysicalDeviceImagelessFramebufferFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkFramebufferAttachmentsCreateInfo, marshal_VkFramebufferAttachmentsCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkFramebufferAttachmentsCreateInfo, unmarshal_VkFramebufferAttachmentsCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkFramebufferAttachmentImageInfo, marshal_VkFramebufferAttachmentImageInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkFramebufferAttachmentImageInfo, unmarshal_VkFramebufferAttachmentImageInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkRenderPassAttachmentBeginInfo, marshal_VkRenderPassAttachmentBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkRenderPassAttachmentBeginInfo, unmarshal_VkRenderPassAttachmentBeginInfoKHR);

#endif
#ifdef VK_KHR_create_renderpass2
DEFINE_ALIAS_FUNCTION(marshal_VkRenderPassCreateInfo2, marshal_VkRenderPassCreateInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkRenderPassCreateInfo2, unmarshal_VkRenderPassCreateInfo2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkAttachmentDescription2, marshal_VkAttachmentDescription2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentDescription2, unmarshal_VkAttachmentDescription2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkAttachmentReference2, marshal_VkAttachmentReference2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentReference2, unmarshal_VkAttachmentReference2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSubpassDescription2, marshal_VkSubpassDescription2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSubpassDescription2, unmarshal_VkSubpassDescription2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSubpassDependency2, marshal_VkSubpassDependency2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSubpassDependency2, unmarshal_VkSubpassDependency2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSubpassBeginInfo, marshal_VkSubpassBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSubpassBeginInfo, unmarshal_VkSubpassBeginInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSubpassEndInfo, marshal_VkSubpassEndInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSubpassEndInfo, unmarshal_VkSubpassEndInfoKHR);

#define OP_vkCreateRenderPass2KHR 20225
#define OP_vkCmdBeginRenderPass2KHR 20226
#define OP_vkCmdNextSubpass2KHR 20227
#define OP_vkCmdEndRenderPass2KHR 20228
#endif
#ifdef VK_KHR_shared_presentable_image
void marshal_VkSharedPresentSurfaceCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSharedPresentSurfaceCapabilitiesKHR* forMarshaling);

void unmarshal_VkSharedPresentSurfaceCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSharedPresentSurfaceCapabilitiesKHR* forUnmarshaling);

#define OP_vkGetSwapchainStatusKHR 20229
#endif
#ifdef VK_KHR_external_fence_capabilities
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceExternalFenceInfo, marshal_VkPhysicalDeviceExternalFenceInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceExternalFenceInfo, unmarshal_VkPhysicalDeviceExternalFenceInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkExternalFenceProperties, marshal_VkExternalFencePropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExternalFenceProperties, unmarshal_VkExternalFencePropertiesKHR);

#define OP_vkGetPhysicalDeviceExternalFencePropertiesKHR 20230
#endif
#ifdef VK_KHR_external_fence
DEFINE_ALIAS_FUNCTION(marshal_VkExportFenceCreateInfo, marshal_VkExportFenceCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkExportFenceCreateInfo, unmarshal_VkExportFenceCreateInfoKHR);

#endif
#ifdef VK_KHR_external_fence_win32
void marshal_VkImportFenceWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportFenceWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkImportFenceWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportFenceWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkExportFenceWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportFenceWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkExportFenceWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportFenceWin32HandleInfoKHR* forUnmarshaling);

void marshal_VkFenceGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFenceGetWin32HandleInfoKHR* forMarshaling);

void unmarshal_VkFenceGetWin32HandleInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFenceGetWin32HandleInfoKHR* forUnmarshaling);

#define OP_vkImportFenceWin32HandleKHR 20231
#define OP_vkGetFenceWin32HandleKHR 20232
#endif
#ifdef VK_KHR_external_fence_fd
void marshal_VkImportFenceFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportFenceFdInfoKHR* forMarshaling);

void unmarshal_VkImportFenceFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportFenceFdInfoKHR* forUnmarshaling);

void marshal_VkFenceGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFenceGetFdInfoKHR* forMarshaling);

void unmarshal_VkFenceGetFdInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFenceGetFdInfoKHR* forUnmarshaling);

#define OP_vkImportFenceFdKHR 20233
#define OP_vkGetFenceFdKHR 20234
#endif
#ifdef VK_KHR_performance_query
void marshal_VkPhysicalDevicePerformanceQueryFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePerformanceQueryFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePerformanceQueryFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePerformanceQueryFeaturesKHR* forUnmarshaling);

void marshal_VkPhysicalDevicePerformanceQueryPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePerformanceQueryPropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePerformanceQueryPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePerformanceQueryPropertiesKHR* forUnmarshaling);

void marshal_VkPerformanceCounterKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceCounterKHR* forMarshaling);

void unmarshal_VkPerformanceCounterKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceCounterKHR* forUnmarshaling);

void marshal_VkPerformanceCounterDescriptionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceCounterDescriptionKHR* forMarshaling);

void unmarshal_VkPerformanceCounterDescriptionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceCounterDescriptionKHR* forUnmarshaling);

void marshal_VkQueryPoolPerformanceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueryPoolPerformanceCreateInfoKHR* forMarshaling);

void unmarshal_VkQueryPoolPerformanceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueryPoolPerformanceCreateInfoKHR* forUnmarshaling);

void marshal_VkPerformanceCounterResultKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceCounterResultKHR* forMarshaling);

void unmarshal_VkPerformanceCounterResultKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceCounterResultKHR* forUnmarshaling);

void marshal_VkAcquireProfilingLockInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAcquireProfilingLockInfoKHR* forMarshaling);

void unmarshal_VkAcquireProfilingLockInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAcquireProfilingLockInfoKHR* forUnmarshaling);

void marshal_VkPerformanceQuerySubmitInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceQuerySubmitInfoKHR* forMarshaling);

void unmarshal_VkPerformanceQuerySubmitInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceQuerySubmitInfoKHR* forUnmarshaling);

#define OP_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR 299033148
#define OP_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR 282029987
#define OP_vkAcquireProfilingLockKHR 238952296
#define OP_vkReleaseProfilingLockKHR 223904011
#endif
#ifdef VK_KHR_maintenance2
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDevicePointClippingProperties, marshal_VkPhysicalDevicePointClippingPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDevicePointClippingProperties, unmarshal_VkPhysicalDevicePointClippingPropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkRenderPassInputAttachmentAspectCreateInfo, marshal_VkRenderPassInputAttachmentAspectCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkRenderPassInputAttachmentAspectCreateInfo, unmarshal_VkRenderPassInputAttachmentAspectCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkInputAttachmentAspectReference, marshal_VkInputAttachmentAspectReferenceKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkInputAttachmentAspectReference, unmarshal_VkInputAttachmentAspectReferenceKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkImageViewUsageCreateInfo, marshal_VkImageViewUsageCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageViewUsageCreateInfo, unmarshal_VkImageViewUsageCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPipelineTessellationDomainOriginStateCreateInfo, marshal_VkPipelineTessellationDomainOriginStateCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPipelineTessellationDomainOriginStateCreateInfo, unmarshal_VkPipelineTessellationDomainOriginStateCreateInfoKHR);

#endif
#ifdef VK_KHR_get_surface_capabilities2
void marshal_VkPhysicalDeviceSurfaceInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSurfaceInfo2KHR* forMarshaling);

void unmarshal_VkPhysicalDeviceSurfaceInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSurfaceInfo2KHR* forUnmarshaling);

void marshal_VkSurfaceCapabilities2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceCapabilities2KHR* forMarshaling);

void unmarshal_VkSurfaceCapabilities2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceCapabilities2KHR* forUnmarshaling);

void marshal_VkSurfaceFormat2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceFormat2KHR* forMarshaling);

void unmarshal_VkSurfaceFormat2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceFormat2KHR* forUnmarshaling);

#define OP_vkGetPhysicalDeviceSurfaceCapabilities2KHR 20235
#define OP_vkGetPhysicalDeviceSurfaceFormats2KHR 20236
#endif
#ifdef VK_KHR_variable_pointers
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceVariablePointersFeatures, marshal_VkPhysicalDeviceVariablePointerFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceVariablePointersFeatures, unmarshal_VkPhysicalDeviceVariablePointerFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceVariablePointersFeatures, marshal_VkPhysicalDeviceVariablePointersFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceVariablePointersFeatures, unmarshal_VkPhysicalDeviceVariablePointersFeaturesKHR);

#endif
#ifdef VK_KHR_get_display_properties2
void marshal_VkDisplayProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayProperties2KHR* forMarshaling);

void unmarshal_VkDisplayProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayProperties2KHR* forUnmarshaling);

void marshal_VkDisplayPlaneProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPlaneProperties2KHR* forMarshaling);

void unmarshal_VkDisplayPlaneProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPlaneProperties2KHR* forUnmarshaling);

void marshal_VkDisplayModeProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayModeProperties2KHR* forMarshaling);

void unmarshal_VkDisplayModeProperties2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayModeProperties2KHR* forUnmarshaling);

void marshal_VkDisplayPlaneInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPlaneInfo2KHR* forMarshaling);

void unmarshal_VkDisplayPlaneInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPlaneInfo2KHR* forUnmarshaling);

void marshal_VkDisplayPlaneCapabilities2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPlaneCapabilities2KHR* forMarshaling);

void unmarshal_VkDisplayPlaneCapabilities2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPlaneCapabilities2KHR* forUnmarshaling);

#define OP_vkGetPhysicalDeviceDisplayProperties2KHR 20237
#define OP_vkGetPhysicalDeviceDisplayPlaneProperties2KHR 20238
#define OP_vkGetDisplayModeProperties2KHR 20239
#define OP_vkGetDisplayPlaneCapabilities2KHR 20240
#endif
#ifdef VK_KHR_dedicated_allocation
DEFINE_ALIAS_FUNCTION(marshal_VkMemoryDedicatedRequirements, marshal_VkMemoryDedicatedRequirementsKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkMemoryDedicatedRequirements, unmarshal_VkMemoryDedicatedRequirementsKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkMemoryDedicatedAllocateInfo, marshal_VkMemoryDedicatedAllocateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkMemoryDedicatedAllocateInfo, unmarshal_VkMemoryDedicatedAllocateInfoKHR);

#endif
#ifdef VK_KHR_storage_buffer_storage_class
#endif
#ifdef VK_KHR_relaxed_block_layout
#endif
#ifdef VK_KHR_get_memory_requirements2
DEFINE_ALIAS_FUNCTION(marshal_VkBufferMemoryRequirementsInfo2, marshal_VkBufferMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBufferMemoryRequirementsInfo2, unmarshal_VkBufferMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkImageMemoryRequirementsInfo2, marshal_VkImageMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageMemoryRequirementsInfo2, unmarshal_VkImageMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkImageSparseMemoryRequirementsInfo2, marshal_VkImageSparseMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageSparseMemoryRequirementsInfo2, unmarshal_VkImageSparseMemoryRequirementsInfo2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkMemoryRequirements2, marshal_VkMemoryRequirements2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkMemoryRequirements2, unmarshal_VkMemoryRequirements2KHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSparseImageMemoryRequirements2, marshal_VkSparseImageMemoryRequirements2KHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSparseImageMemoryRequirements2, unmarshal_VkSparseImageMemoryRequirements2KHR);

#define OP_vkGetImageMemoryRequirements2KHR 20241
#define OP_vkGetBufferMemoryRequirements2KHR 20242
#define OP_vkGetImageSparseMemoryRequirements2KHR 20243
#endif
#ifdef VK_KHR_image_format_list
DEFINE_ALIAS_FUNCTION(marshal_VkImageFormatListCreateInfo, marshal_VkImageFormatListCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageFormatListCreateInfo, unmarshal_VkImageFormatListCreateInfoKHR);

#endif
#ifdef VK_KHR_sampler_ycbcr_conversion
DEFINE_ALIAS_FUNCTION(marshal_VkSamplerYcbcrConversionCreateInfo, marshal_VkSamplerYcbcrConversionCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSamplerYcbcrConversionCreateInfo, unmarshal_VkSamplerYcbcrConversionCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSamplerYcbcrConversionInfo, marshal_VkSamplerYcbcrConversionInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSamplerYcbcrConversionInfo, unmarshal_VkSamplerYcbcrConversionInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkBindImagePlaneMemoryInfo, marshal_VkBindImagePlaneMemoryInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBindImagePlaneMemoryInfo, unmarshal_VkBindImagePlaneMemoryInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkImagePlaneMemoryRequirementsInfo, marshal_VkImagePlaneMemoryRequirementsInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImagePlaneMemoryRequirementsInfo, unmarshal_VkImagePlaneMemoryRequirementsInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures, marshal_VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeatures, unmarshal_VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSamplerYcbcrConversionImageFormatProperties, marshal_VkSamplerYcbcrConversionImageFormatPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSamplerYcbcrConversionImageFormatProperties, unmarshal_VkSamplerYcbcrConversionImageFormatPropertiesKHR);

#define OP_vkCreateSamplerYcbcrConversionKHR 20244
#define OP_vkDestroySamplerYcbcrConversionKHR 20245
#endif
#ifdef VK_KHR_bind_memory2
DEFINE_ALIAS_FUNCTION(marshal_VkBindBufferMemoryInfo, marshal_VkBindBufferMemoryInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBindBufferMemoryInfo, unmarshal_VkBindBufferMemoryInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkBindImageMemoryInfo, marshal_VkBindImageMemoryInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBindImageMemoryInfo, unmarshal_VkBindImageMemoryInfoKHR);

#define OP_vkBindBufferMemory2KHR 20246
#define OP_vkBindImageMemory2KHR 20247
#endif
#ifdef VK_KHR_portability_subset
void marshal_VkPhysicalDevicePortabilitySubsetFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePortabilitySubsetFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePortabilitySubsetFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePortabilitySubsetFeaturesKHR* forUnmarshaling);

void marshal_VkPhysicalDevicePortabilitySubsetPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePortabilitySubsetPropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePortabilitySubsetPropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePortabilitySubsetPropertiesKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_maintenance3
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceMaintenance3Properties, marshal_VkPhysicalDeviceMaintenance3PropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceMaintenance3Properties, unmarshal_VkPhysicalDeviceMaintenance3PropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorSetLayoutSupport, marshal_VkDescriptorSetLayoutSupportKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorSetLayoutSupport, unmarshal_VkDescriptorSetLayoutSupportKHR);

#define OP_vkGetDescriptorSetLayoutSupportKHR 20248
#endif
#ifdef VK_KHR_draw_indirect_count
#define OP_vkCmdDrawIndirectCountKHR 20249
#define OP_vkCmdDrawIndexedIndirectCountKHR 20250
#endif
#ifdef VK_KHR_shader_subgroup_extended_types
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, marshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures, unmarshal_VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR);

#endif
#ifdef VK_KHR_8bit_storage
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDevice8BitStorageFeatures, marshal_VkPhysicalDevice8BitStorageFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDevice8BitStorageFeatures, unmarshal_VkPhysicalDevice8BitStorageFeaturesKHR);

#endif
#ifdef VK_KHR_shader_atomic_int64
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceShaderAtomicInt64Features, marshal_VkPhysicalDeviceShaderAtomicInt64FeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceShaderAtomicInt64Features, unmarshal_VkPhysicalDeviceShaderAtomicInt64FeaturesKHR);

#endif
#ifdef VK_KHR_shader_clock
void marshal_VkPhysicalDeviceShaderClockFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderClockFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderClockFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderClockFeaturesKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_driver_properties
DEFINE_ALIAS_FUNCTION(marshal_VkConformanceVersion, marshal_VkConformanceVersionKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkConformanceVersion, unmarshal_VkConformanceVersionKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceDriverProperties, marshal_VkPhysicalDeviceDriverPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceDriverProperties, unmarshal_VkPhysicalDeviceDriverPropertiesKHR);

#endif
#ifdef VK_KHR_shader_float_controls
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceFloatControlsProperties, marshal_VkPhysicalDeviceFloatControlsPropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceFloatControlsProperties, unmarshal_VkPhysicalDeviceFloatControlsPropertiesKHR);

#endif
#ifdef VK_KHR_depth_stencil_resolve
DEFINE_ALIAS_FUNCTION(marshal_VkSubpassDescriptionDepthStencilResolve, marshal_VkSubpassDescriptionDepthStencilResolveKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSubpassDescriptionDepthStencilResolve, unmarshal_VkSubpassDescriptionDepthStencilResolveKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceDepthStencilResolveProperties, marshal_VkPhysicalDeviceDepthStencilResolvePropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceDepthStencilResolveProperties, unmarshal_VkPhysicalDeviceDepthStencilResolvePropertiesKHR);

#endif
#ifdef VK_KHR_swapchain_mutable_format
#endif
#ifdef VK_KHR_timeline_semaphore
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceTimelineSemaphoreFeatures, marshal_VkPhysicalDeviceTimelineSemaphoreFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceTimelineSemaphoreFeatures, unmarshal_VkPhysicalDeviceTimelineSemaphoreFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceTimelineSemaphoreProperties, marshal_VkPhysicalDeviceTimelineSemaphorePropertiesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceTimelineSemaphoreProperties, unmarshal_VkPhysicalDeviceTimelineSemaphorePropertiesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSemaphoreTypeCreateInfo, marshal_VkSemaphoreTypeCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSemaphoreTypeCreateInfo, unmarshal_VkSemaphoreTypeCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkTimelineSemaphoreSubmitInfo, marshal_VkTimelineSemaphoreSubmitInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkTimelineSemaphoreSubmitInfo, unmarshal_VkTimelineSemaphoreSubmitInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSemaphoreWaitInfo, marshal_VkSemaphoreWaitInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSemaphoreWaitInfo, unmarshal_VkSemaphoreWaitInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkSemaphoreSignalInfo, marshal_VkSemaphoreSignalInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSemaphoreSignalInfo, unmarshal_VkSemaphoreSignalInfoKHR);

#define OP_vkGetSemaphoreCounterValueKHR 229059496
#define OP_vkWaitSemaphoresKHR 263904357
#define OP_vkSignalSemaphoreKHR 269919108
#endif
#ifdef VK_KHR_vulkan_memory_model
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceVulkanMemoryModelFeatures, marshal_VkPhysicalDeviceVulkanMemoryModelFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceVulkanMemoryModelFeatures, unmarshal_VkPhysicalDeviceVulkanMemoryModelFeaturesKHR);

#endif
#ifdef VK_KHR_shader_terminate_invocation
void marshal_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_fragment_shading_rate
void marshal_VkFragmentShadingRateAttachmentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFragmentShadingRateAttachmentInfoKHR* forMarshaling);

void unmarshal_VkFragmentShadingRateAttachmentInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFragmentShadingRateAttachmentInfoKHR* forUnmarshaling);

void marshal_VkPipelineFragmentShadingRateStateCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineFragmentShadingRateStateCreateInfoKHR* forMarshaling);

void unmarshal_VkPipelineFragmentShadingRateStateCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineFragmentShadingRateStateCreateInfoKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShadingRateFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShadingRateFeaturesKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShadingRatePropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShadingRatePropertiesKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentShadingRateKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShadingRateKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShadingRateKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShadingRateKHR* forUnmarshaling);

#define OP_vkGetPhysicalDeviceFragmentShadingRatesKHR 272978593
#define OP_vkCmdSetFragmentShadingRateKHR 204060280
#endif
#ifdef VK_KHR_spirv_1_4
#endif
#ifdef VK_KHR_surface_protected_capabilities
void marshal_VkSurfaceProtectedCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceProtectedCapabilitiesKHR* forMarshaling);

void unmarshal_VkSurfaceProtectedCapabilitiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceProtectedCapabilitiesKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, marshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures, unmarshal_VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkAttachmentReferenceStencilLayout, marshal_VkAttachmentReferenceStencilLayoutKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentReferenceStencilLayout, unmarshal_VkAttachmentReferenceStencilLayoutKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkAttachmentDescriptionStencilLayout, marshal_VkAttachmentDescriptionStencilLayoutKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentDescriptionStencilLayout, unmarshal_VkAttachmentDescriptionStencilLayoutKHR);

#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, marshal_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, unmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR);

#endif
#ifdef VK_KHR_buffer_device_address
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceBufferDeviceAddressFeatures, marshal_VkPhysicalDeviceBufferDeviceAddressFeaturesKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceBufferDeviceAddressFeatures, unmarshal_VkPhysicalDeviceBufferDeviceAddressFeaturesKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkBufferDeviceAddressInfo, marshal_VkBufferDeviceAddressInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBufferDeviceAddressInfo, unmarshal_VkBufferDeviceAddressInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkBufferOpaqueCaptureAddressCreateInfo, marshal_VkBufferOpaqueCaptureAddressCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBufferOpaqueCaptureAddressCreateInfo, unmarshal_VkBufferOpaqueCaptureAddressCreateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkMemoryOpaqueCaptureAddressAllocateInfo, marshal_VkMemoryOpaqueCaptureAddressAllocateInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkMemoryOpaqueCaptureAddressAllocateInfo, unmarshal_VkMemoryOpaqueCaptureAddressAllocateInfoKHR);

DEFINE_ALIAS_FUNCTION(marshal_VkDeviceMemoryOpaqueCaptureAddressInfo, marshal_VkDeviceMemoryOpaqueCaptureAddressInfoKHR);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDeviceMemoryOpaqueCaptureAddressInfo, unmarshal_VkDeviceMemoryOpaqueCaptureAddressInfoKHR);

#define OP_vkGetBufferDeviceAddressKHR 219261480
#define OP_vkGetBufferOpaqueCaptureAddressKHR 285631711
#define OP_vkGetDeviceMemoryOpaqueCaptureAddressKHR 294671624
#endif
#ifdef VK_KHR_deferred_host_operations
#define OP_vkCreateDeferredOperationKHR 274342644
#define OP_vkDestroyDeferredOperationKHR 215419514
#define OP_vkGetDeferredOperationMaxConcurrencyKHR 203387076
#define OP_vkGetDeferredOperationResultKHR 263822960
#define OP_vkDeferredOperationJoinKHR 218492930
#endif
#ifdef VK_KHR_pipeline_executable_properties
void marshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* forUnmarshaling);

void marshal_VkPipelineInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineInfoKHR* forMarshaling);

void unmarshal_VkPipelineInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineInfoKHR* forUnmarshaling);

void marshal_VkPipelineExecutablePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineExecutablePropertiesKHR* forMarshaling);

void unmarshal_VkPipelineExecutablePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineExecutablePropertiesKHR* forUnmarshaling);

void marshal_VkPipelineExecutableInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineExecutableInfoKHR* forMarshaling);

void unmarshal_VkPipelineExecutableInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineExecutableInfoKHR* forUnmarshaling);

void marshal_VkPipelineExecutableStatisticValueKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineExecutableStatisticValueKHR* forMarshaling);

void unmarshal_VkPipelineExecutableStatisticValueKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineExecutableStatisticValueKHR* forUnmarshaling);

void marshal_VkPipelineExecutableStatisticKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineExecutableStatisticKHR* forMarshaling);

void unmarshal_VkPipelineExecutableStatisticKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineExecutableStatisticKHR* forUnmarshaling);

void marshal_VkPipelineExecutableInternalRepresentationKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineExecutableInternalRepresentationKHR* forMarshaling);

void unmarshal_VkPipelineExecutableInternalRepresentationKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineExecutableInternalRepresentationKHR* forUnmarshaling);

#define OP_vkGetPipelineExecutablePropertiesKHR 269458798
#define OP_vkGetPipelineExecutableStatisticsKHR 271191699
#define OP_vkGetPipelineExecutableInternalRepresentationsKHR 274148497
#endif
#ifdef VK_KHR_pipeline_library
void marshal_VkPipelineLibraryCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineLibraryCreateInfoKHR* forMarshaling);

void unmarshal_VkPipelineLibraryCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineLibraryCreateInfoKHR* forUnmarshaling);

#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
#ifdef VK_KHR_copy_commands2
void marshal_VkBufferCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferCopy2KHR* forMarshaling);

void unmarshal_VkBufferCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferCopy2KHR* forUnmarshaling);

void marshal_VkCopyBufferInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyBufferInfo2KHR* forMarshaling);

void unmarshal_VkCopyBufferInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyBufferInfo2KHR* forUnmarshaling);

void marshal_VkImageCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageCopy2KHR* forMarshaling);

void unmarshal_VkImageCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageCopy2KHR* forUnmarshaling);

void marshal_VkCopyImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyImageInfo2KHR* forMarshaling);

void unmarshal_VkCopyImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyImageInfo2KHR* forUnmarshaling);

void marshal_VkBufferImageCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferImageCopy2KHR* forMarshaling);

void unmarshal_VkBufferImageCopy2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferImageCopy2KHR* forUnmarshaling);

void marshal_VkCopyBufferToImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyBufferToImageInfo2KHR* forMarshaling);

void unmarshal_VkCopyBufferToImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyBufferToImageInfo2KHR* forUnmarshaling);

void marshal_VkCopyImageToBufferInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyImageToBufferInfo2KHR* forMarshaling);

void unmarshal_VkCopyImageToBufferInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyImageToBufferInfo2KHR* forUnmarshaling);

void marshal_VkImageBlit2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageBlit2KHR* forMarshaling);

void unmarshal_VkImageBlit2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageBlit2KHR* forUnmarshaling);

void marshal_VkBlitImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBlitImageInfo2KHR* forMarshaling);

void unmarshal_VkBlitImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBlitImageInfo2KHR* forUnmarshaling);

void marshal_VkImageResolve2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageResolve2KHR* forMarshaling);

void unmarshal_VkImageResolve2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageResolve2KHR* forUnmarshaling);

void marshal_VkResolveImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkResolveImageInfo2KHR* forMarshaling);

void unmarshal_VkResolveImageInfo2KHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkResolveImageInfo2KHR* forUnmarshaling);

#define OP_vkCmdCopyBuffer2KHR 247893766
#define OP_vkCmdCopyImage2KHR 227008250
#define OP_vkCmdCopyBufferToImage2KHR 248841963
#define OP_vkCmdCopyImageToBuffer2KHR 252249060
#define OP_vkCmdBlitImage2KHR 259838288
#define OP_vkCmdResolveImage2KHR 254857232
#endif
#ifdef VK_ANDROID_native_buffer
void marshal_VkNativeBufferANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkNativeBufferANDROID* forMarshaling);

void unmarshal_VkNativeBufferANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkNativeBufferANDROID* forUnmarshaling);

#define OP_vkGetSwapchainGrallocUsageANDROID 20251
#define OP_vkAcquireImageANDROID 20252
#define OP_vkQueueSignalReleaseImageANDROID 20253
#endif
#ifdef VK_EXT_debug_report
void marshal_VkDebugReportCallbackCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugReportCallbackCreateInfoEXT* forMarshaling);

void unmarshal_VkDebugReportCallbackCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugReportCallbackCreateInfoEXT* forUnmarshaling);

#define OP_vkCreateDebugReportCallbackEXT 20254
#define OP_vkDestroyDebugReportCallbackEXT 20255
#define OP_vkDebugReportMessageEXT 20256
#endif
#ifdef VK_NV_glsl_shader
#endif
#ifdef VK_EXT_depth_range_unrestricted
#endif
#ifdef VK_IMG_filter_cubic
#endif
#ifdef VK_AMD_rasterization_order
void marshal_VkPipelineRasterizationStateRasterizationOrderAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationStateRasterizationOrderAMD* forMarshaling);

void unmarshal_VkPipelineRasterizationStateRasterizationOrderAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationStateRasterizationOrderAMD* forUnmarshaling);

#endif
#ifdef VK_AMD_shader_trinary_minmax
#endif
#ifdef VK_AMD_shader_explicit_vertex_parameter
#endif
#ifdef VK_EXT_debug_marker
void marshal_VkDebugMarkerObjectNameInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugMarkerObjectNameInfoEXT* forMarshaling);

void unmarshal_VkDebugMarkerObjectNameInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugMarkerObjectNameInfoEXT* forUnmarshaling);

void marshal_VkDebugMarkerObjectTagInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugMarkerObjectTagInfoEXT* forMarshaling);

void unmarshal_VkDebugMarkerObjectTagInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugMarkerObjectTagInfoEXT* forUnmarshaling);

void marshal_VkDebugMarkerMarkerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugMarkerMarkerInfoEXT* forMarshaling);

void unmarshal_VkDebugMarkerMarkerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugMarkerMarkerInfoEXT* forUnmarshaling);

#define OP_vkDebugMarkerSetObjectTagEXT 20257
#define OP_vkDebugMarkerSetObjectNameEXT 20258
#define OP_vkCmdDebugMarkerBeginEXT 20259
#define OP_vkCmdDebugMarkerEndEXT 20260
#define OP_vkCmdDebugMarkerInsertEXT 20261
#endif
#ifdef VK_AMD_gcn_shader
#endif
#ifdef VK_NV_dedicated_allocation
void marshal_VkDedicatedAllocationImageCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDedicatedAllocationImageCreateInfoNV* forMarshaling);

void unmarshal_VkDedicatedAllocationImageCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDedicatedAllocationImageCreateInfoNV* forUnmarshaling);

void marshal_VkDedicatedAllocationBufferCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDedicatedAllocationBufferCreateInfoNV* forMarshaling);

void unmarshal_VkDedicatedAllocationBufferCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDedicatedAllocationBufferCreateInfoNV* forUnmarshaling);

void marshal_VkDedicatedAllocationMemoryAllocateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDedicatedAllocationMemoryAllocateInfoNV* forMarshaling);

void unmarshal_VkDedicatedAllocationMemoryAllocateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDedicatedAllocationMemoryAllocateInfoNV* forUnmarshaling);

#endif
#ifdef VK_EXT_transform_feedback
void marshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTransformFeedbackFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTransformFeedbackFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTransformFeedbackPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTransformFeedbackPropertiesEXT* forUnmarshaling);

void marshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationStateStreamCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineRasterizationStateStreamCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationStateStreamCreateInfoEXT* forUnmarshaling);

#define OP_vkCmdBindTransformFeedbackBuffersEXT 267779978
#define OP_vkCmdBeginTransformFeedbackEXT 294396901
#define OP_vkCmdEndTransformFeedbackEXT 272333731
#define OP_vkCmdBeginQueryIndexedEXT 275810601
#define OP_vkCmdEndQueryIndexedEXT 279821337
#define OP_vkCmdDrawIndirectByteCountEXT 285235943
#endif
#ifdef VK_NVX_image_view_handle
void marshal_VkImageViewHandleInfoNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageViewHandleInfoNVX* forMarshaling);

void unmarshal_VkImageViewHandleInfoNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageViewHandleInfoNVX* forUnmarshaling);

void marshal_VkImageViewAddressPropertiesNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageViewAddressPropertiesNVX* forMarshaling);

void unmarshal_VkImageViewAddressPropertiesNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageViewAddressPropertiesNVX* forUnmarshaling);

#define OP_vkGetImageViewHandleNVX 204379647
#define OP_vkGetImageViewAddressNVX 210668576
#endif
#ifdef VK_AMD_draw_indirect_count
#define OP_vkCmdDrawIndirectCountAMD 20262
#define OP_vkCmdDrawIndexedIndirectCountAMD 20263
#endif
#ifdef VK_AMD_negative_viewport_height
#endif
#ifdef VK_AMD_gpu_shader_half_float
#endif
#ifdef VK_AMD_shader_ballot
#endif
#ifdef VK_AMD_texture_gather_bias_lod
void marshal_VkTextureLODGatherFormatPropertiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkTextureLODGatherFormatPropertiesAMD* forMarshaling);

void unmarshal_VkTextureLODGatherFormatPropertiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkTextureLODGatherFormatPropertiesAMD* forUnmarshaling);

#endif
#ifdef VK_AMD_shader_info
void marshal_VkShaderResourceUsageAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkShaderResourceUsageAMD* forMarshaling);

void unmarshal_VkShaderResourceUsageAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkShaderResourceUsageAMD* forUnmarshaling);

void marshal_VkShaderStatisticsInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkShaderStatisticsInfoAMD* forMarshaling);

void unmarshal_VkShaderStatisticsInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkShaderStatisticsInfoAMD* forUnmarshaling);

#define OP_vkGetShaderInfoAMD 20264
#endif
#ifdef VK_AMD_shader_image_load_store_lod
#endif
#ifdef VK_GGP_stream_descriptor_surface
void marshal_VkStreamDescriptorSurfaceCreateInfoGGP(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkStreamDescriptorSurfaceCreateInfoGGP* forMarshaling);

void unmarshal_VkStreamDescriptorSurfaceCreateInfoGGP(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkStreamDescriptorSurfaceCreateInfoGGP* forUnmarshaling);

#define OP_vkCreateStreamDescriptorSurfaceGGP 241902685
#endif
#ifdef VK_NV_corner_sampled_image
void marshal_VkPhysicalDeviceCornerSampledImageFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCornerSampledImageFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceCornerSampledImageFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCornerSampledImageFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_IMG_format_pvrtc
#endif
#ifdef VK_NV_external_memory_capabilities
void marshal_VkExternalImageFormatPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalImageFormatPropertiesNV* forMarshaling);

void unmarshal_VkExternalImageFormatPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalImageFormatPropertiesNV* forUnmarshaling);

#define OP_vkGetPhysicalDeviceExternalImageFormatPropertiesNV 20265
#endif
#ifdef VK_NV_external_memory
void marshal_VkExternalMemoryImageCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalMemoryImageCreateInfoNV* forMarshaling);

void unmarshal_VkExternalMemoryImageCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalMemoryImageCreateInfoNV* forUnmarshaling);

void marshal_VkExportMemoryAllocateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportMemoryAllocateInfoNV* forMarshaling);

void unmarshal_VkExportMemoryAllocateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportMemoryAllocateInfoNV* forUnmarshaling);

#endif
#ifdef VK_NV_external_memory_win32
void marshal_VkImportMemoryWin32HandleInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportMemoryWin32HandleInfoNV* forMarshaling);

void unmarshal_VkImportMemoryWin32HandleInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportMemoryWin32HandleInfoNV* forUnmarshaling);

void marshal_VkExportMemoryWin32HandleInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExportMemoryWin32HandleInfoNV* forMarshaling);

void unmarshal_VkExportMemoryWin32HandleInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExportMemoryWin32HandleInfoNV* forUnmarshaling);

#define OP_vkGetMemoryWin32HandleNV 20266
#endif
#ifdef VK_NV_win32_keyed_mutex
void marshal_VkWin32KeyedMutexAcquireReleaseInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWin32KeyedMutexAcquireReleaseInfoNV* forMarshaling);

void unmarshal_VkWin32KeyedMutexAcquireReleaseInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWin32KeyedMutexAcquireReleaseInfoNV* forUnmarshaling);

#endif
#ifdef VK_EXT_validation_flags
void marshal_VkValidationFlagsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkValidationFlagsEXT* forMarshaling);

void unmarshal_VkValidationFlagsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkValidationFlagsEXT* forUnmarshaling);

#endif
#ifdef VK_NN_vi_surface
void marshal_VkViSurfaceCreateInfoNN(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkViSurfaceCreateInfoNN* forMarshaling);

void unmarshal_VkViSurfaceCreateInfoNN(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkViSurfaceCreateInfoNN* forUnmarshaling);

#define OP_vkCreateViSurfaceNN 20267
#endif
#ifdef VK_EXT_shader_subgroup_ballot
#endif
#ifdef VK_EXT_shader_subgroup_vote
#endif
#ifdef VK_EXT_texture_compression_astc_hdr
void marshal_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_astc_decode_mode
void marshal_VkImageViewASTCDecodeModeEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageViewASTCDecodeModeEXT* forMarshaling);

void unmarshal_VkImageViewASTCDecodeModeEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageViewASTCDecodeModeEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceASTCDecodeFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceASTCDecodeFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceASTCDecodeFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceASTCDecodeFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_conditional_rendering
void marshal_VkConditionalRenderingBeginInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkConditionalRenderingBeginInfoEXT* forMarshaling);

void unmarshal_VkConditionalRenderingBeginInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkConditionalRenderingBeginInfoEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceConditionalRenderingFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceConditionalRenderingFeaturesEXT* forUnmarshaling);

void marshal_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandBufferInheritanceConditionalRenderingInfoEXT* forMarshaling);

void unmarshal_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandBufferInheritanceConditionalRenderingInfoEXT* forUnmarshaling);

#define OP_vkCmdBeginConditionalRenderingEXT 20268
#define OP_vkCmdEndConditionalRenderingEXT 20269
#endif
#ifdef VK_NV_clip_space_w_scaling
void marshal_VkViewportWScalingNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkViewportWScalingNV* forMarshaling);

void unmarshal_VkViewportWScalingNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkViewportWScalingNV* forUnmarshaling);

void marshal_VkPipelineViewportWScalingStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportWScalingStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineViewportWScalingStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportWScalingStateCreateInfoNV* forUnmarshaling);

#define OP_vkCmdSetViewportWScalingNV 20279
#endif
#ifdef VK_EXT_direct_mode_display
#define OP_vkReleaseDisplayEXT 20280
#endif
#ifdef VK_EXT_acquire_xlib_display
#define OP_vkAcquireXlibDisplayEXT 20281
#define OP_vkGetRandROutputDisplayEXT 20282
#endif
#ifdef VK_EXT_display_surface_counter
void marshal_VkSurfaceCapabilities2EXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceCapabilities2EXT* forMarshaling);

void unmarshal_VkSurfaceCapabilities2EXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceCapabilities2EXT* forUnmarshaling);

#define OP_vkGetPhysicalDeviceSurfaceCapabilities2EXT 20283
#endif
#ifdef VK_EXT_display_control
void marshal_VkDisplayPowerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayPowerInfoEXT* forMarshaling);

void unmarshal_VkDisplayPowerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayPowerInfoEXT* forUnmarshaling);

void marshal_VkDeviceEventInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceEventInfoEXT* forMarshaling);

void unmarshal_VkDeviceEventInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceEventInfoEXT* forUnmarshaling);

void marshal_VkDisplayEventInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayEventInfoEXT* forMarshaling);

void unmarshal_VkDisplayEventInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayEventInfoEXT* forUnmarshaling);

void marshal_VkSwapchainCounterCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSwapchainCounterCreateInfoEXT* forMarshaling);

void unmarshal_VkSwapchainCounterCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSwapchainCounterCreateInfoEXT* forUnmarshaling);

#define OP_vkDisplayPowerControlEXT 20284
#define OP_vkRegisterDeviceEventEXT 20285
#define OP_vkRegisterDisplayEventEXT 20286
#define OP_vkGetSwapchainCounterEXT 20287
#endif
#ifdef VK_GOOGLE_display_timing
void marshal_VkRefreshCycleDurationGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRefreshCycleDurationGOOGLE* forMarshaling);

void unmarshal_VkRefreshCycleDurationGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRefreshCycleDurationGOOGLE* forUnmarshaling);

void marshal_VkPastPresentationTimingGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPastPresentationTimingGOOGLE* forMarshaling);

void unmarshal_VkPastPresentationTimingGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPastPresentationTimingGOOGLE* forUnmarshaling);

void marshal_VkPresentTimeGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentTimeGOOGLE* forMarshaling);

void unmarshal_VkPresentTimeGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentTimeGOOGLE* forUnmarshaling);

void marshal_VkPresentTimesInfoGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentTimesInfoGOOGLE* forMarshaling);

void unmarshal_VkPresentTimesInfoGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentTimesInfoGOOGLE* forUnmarshaling);

#define OP_vkGetRefreshCycleDurationGOOGLE 20288
#define OP_vkGetPastPresentationTimingGOOGLE 20289
#endif
#ifdef VK_NV_sample_mask_override_coverage
#endif
#ifdef VK_NV_geometry_shader_passthrough
#endif
#ifdef VK_NV_viewport_array2
#endif
#ifdef VK_NVX_multiview_per_view_attributes
void marshal_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* forMarshaling);

void unmarshal_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* forUnmarshaling);

#endif
#ifdef VK_NV_viewport_swizzle
void marshal_VkViewportSwizzleNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkViewportSwizzleNV* forMarshaling);

void unmarshal_VkViewportSwizzleNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkViewportSwizzleNV* forUnmarshaling);

void marshal_VkPipelineViewportSwizzleStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportSwizzleStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineViewportSwizzleStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportSwizzleStateCreateInfoNV* forUnmarshaling);

#endif
#ifdef VK_EXT_discard_rectangles
void marshal_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDiscardRectanglePropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDiscardRectanglePropertiesEXT* forUnmarshaling);

void marshal_VkPipelineDiscardRectangleStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineDiscardRectangleStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineDiscardRectangleStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineDiscardRectangleStateCreateInfoEXT* forUnmarshaling);

#define OP_vkCmdSetDiscardRectangleEXT 20290
#endif
#ifdef VK_EXT_conservative_rasterization
void marshal_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceConservativeRasterizationPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceConservativeRasterizationPropertiesEXT* forUnmarshaling);

void marshal_VkPipelineRasterizationConservativeStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationConservativeStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineRasterizationConservativeStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationConservativeStateCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_depth_clip_enable
void marshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDepthClipEnableFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDepthClipEnableFeaturesEXT* forUnmarshaling);

void marshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationDepthClipStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationDepthClipStateCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_swapchain_colorspace
#endif
#ifdef VK_EXT_hdr_metadata
void marshal_VkXYColorEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkXYColorEXT* forMarshaling);

void unmarshal_VkXYColorEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkXYColorEXT* forUnmarshaling);

void marshal_VkHdrMetadataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkHdrMetadataEXT* forMarshaling);

void unmarshal_VkHdrMetadataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkHdrMetadataEXT* forUnmarshaling);

#define OP_vkSetHdrMetadataEXT 20291
#endif
#ifdef VK_MVK_ios_surface
void marshal_VkIOSSurfaceCreateInfoMVK(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkIOSSurfaceCreateInfoMVK* forMarshaling);

void unmarshal_VkIOSSurfaceCreateInfoMVK(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkIOSSurfaceCreateInfoMVK* forUnmarshaling);

#define OP_vkCreateIOSSurfaceMVK 20292
#endif
#ifdef VK_MVK_macos_surface
void marshal_VkMacOSSurfaceCreateInfoMVK(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMacOSSurfaceCreateInfoMVK* forMarshaling);

void unmarshal_VkMacOSSurfaceCreateInfoMVK(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMacOSSurfaceCreateInfoMVK* forUnmarshaling);

#define OP_vkCreateMacOSSurfaceMVK 20293
#endif
#ifdef VK_MVK_moltenvk
#define OP_vkGetMTLDeviceMVK 20334
#define OP_vkSetMTLTextureMVK 20335
#define OP_vkGetMTLTextureMVK 20336
#define OP_vkGetMTLBufferMVK 20337
#define OP_vkUseIOSurfaceMVK 20338
#define OP_vkGetIOSurfaceMVK 20339
#endif
#ifdef VK_EXT_external_memory_dma_buf
#endif
#ifdef VK_EXT_queue_family_foreign
#endif
#ifdef VK_EXT_debug_utils
void marshal_VkDebugUtilsLabelEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugUtilsLabelEXT* forMarshaling);

void unmarshal_VkDebugUtilsLabelEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugUtilsLabelEXT* forUnmarshaling);

void marshal_VkDebugUtilsObjectNameInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugUtilsObjectNameInfoEXT* forMarshaling);

void unmarshal_VkDebugUtilsObjectNameInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugUtilsObjectNameInfoEXT* forUnmarshaling);

void marshal_VkDebugUtilsMessengerCallbackDataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugUtilsMessengerCallbackDataEXT* forMarshaling);

void unmarshal_VkDebugUtilsMessengerCallbackDataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugUtilsMessengerCallbackDataEXT* forUnmarshaling);

void marshal_VkDebugUtilsMessengerCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugUtilsMessengerCreateInfoEXT* forMarshaling);

void unmarshal_VkDebugUtilsMessengerCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugUtilsMessengerCreateInfoEXT* forUnmarshaling);

void marshal_VkDebugUtilsObjectTagInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDebugUtilsObjectTagInfoEXT* forMarshaling);

void unmarshal_VkDebugUtilsObjectTagInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDebugUtilsObjectTagInfoEXT* forUnmarshaling);

#define OP_vkSetDebugUtilsObjectNameEXT 20294
#define OP_vkSetDebugUtilsObjectTagEXT 20295
#define OP_vkQueueBeginDebugUtilsLabelEXT 20296
#define OP_vkQueueEndDebugUtilsLabelEXT 20297
#define OP_vkQueueInsertDebugUtilsLabelEXT 20298
#define OP_vkCmdBeginDebugUtilsLabelEXT 20299
#define OP_vkCmdEndDebugUtilsLabelEXT 20300
#define OP_vkCmdInsertDebugUtilsLabelEXT 20301
#define OP_vkCreateDebugUtilsMessengerEXT 20302
#define OP_vkDestroyDebugUtilsMessengerEXT 20303
#define OP_vkSubmitDebugUtilsMessageEXT 20304
#endif
#ifdef VK_ANDROID_external_memory_android_hardware_buffer
void marshal_VkAndroidHardwareBufferUsageANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAndroidHardwareBufferUsageANDROID* forMarshaling);

void unmarshal_VkAndroidHardwareBufferUsageANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAndroidHardwareBufferUsageANDROID* forUnmarshaling);

void marshal_VkAndroidHardwareBufferPropertiesANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAndroidHardwareBufferPropertiesANDROID* forMarshaling);

void unmarshal_VkAndroidHardwareBufferPropertiesANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAndroidHardwareBufferPropertiesANDROID* forUnmarshaling);

void marshal_VkAndroidHardwareBufferFormatPropertiesANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAndroidHardwareBufferFormatPropertiesANDROID* forMarshaling);

void unmarshal_VkAndroidHardwareBufferFormatPropertiesANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAndroidHardwareBufferFormatPropertiesANDROID* forUnmarshaling);

void marshal_VkImportAndroidHardwareBufferInfoANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportAndroidHardwareBufferInfoANDROID* forMarshaling);

void unmarshal_VkImportAndroidHardwareBufferInfoANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportAndroidHardwareBufferInfoANDROID* forUnmarshaling);

void marshal_VkMemoryGetAndroidHardwareBufferInfoANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryGetAndroidHardwareBufferInfoANDROID* forMarshaling);

void unmarshal_VkMemoryGetAndroidHardwareBufferInfoANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryGetAndroidHardwareBufferInfoANDROID* forUnmarshaling);

void marshal_VkExternalFormatANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkExternalFormatANDROID* forMarshaling);

void unmarshal_VkExternalFormatANDROID(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkExternalFormatANDROID* forUnmarshaling);

#define OP_vkGetAndroidHardwareBufferPropertiesANDROID 20305
#define OP_vkGetMemoryAndroidHardwareBufferANDROID 20306
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(marshal_VkSamplerReductionModeCreateInfo, marshal_VkSamplerReductionModeCreateInfoEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkSamplerReductionModeCreateInfo, unmarshal_VkSamplerReductionModeCreateInfoEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceSamplerFilterMinmaxProperties, marshal_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceSamplerFilterMinmaxProperties, unmarshal_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT);

#endif
#ifdef VK_AMD_gpu_shader_int16
#endif
#ifdef VK_AMD_mixed_attachment_samples
#endif
#ifdef VK_AMD_shader_fragment_mask
#endif
#ifdef VK_EXT_inline_uniform_block
void marshal_VkPhysicalDeviceInlineUniformBlockFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceInlineUniformBlockFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceInlineUniformBlockFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceInlineUniformBlockFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceInlineUniformBlockPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceInlineUniformBlockPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceInlineUniformBlockPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceInlineUniformBlockPropertiesEXT* forUnmarshaling);

void marshal_VkWriteDescriptorSetInlineUniformBlockEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWriteDescriptorSetInlineUniformBlockEXT* forMarshaling);

void unmarshal_VkWriteDescriptorSetInlineUniformBlockEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWriteDescriptorSetInlineUniformBlockEXT* forUnmarshaling);

void marshal_VkDescriptorPoolInlineUniformBlockCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDescriptorPoolInlineUniformBlockCreateInfoEXT* forMarshaling);

void unmarshal_VkDescriptorPoolInlineUniformBlockCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDescriptorPoolInlineUniformBlockCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_shader_stencil_export
#endif
#ifdef VK_EXT_sample_locations
void marshal_VkSampleLocationEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSampleLocationEXT* forMarshaling);

void unmarshal_VkSampleLocationEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSampleLocationEXT* forUnmarshaling);

void marshal_VkSampleLocationsInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSampleLocationsInfoEXT* forMarshaling);

void unmarshal_VkSampleLocationsInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSampleLocationsInfoEXT* forUnmarshaling);

void marshal_VkAttachmentSampleLocationsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAttachmentSampleLocationsEXT* forMarshaling);

void unmarshal_VkAttachmentSampleLocationsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAttachmentSampleLocationsEXT* forUnmarshaling);

void marshal_VkSubpassSampleLocationsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSubpassSampleLocationsEXT* forMarshaling);

void unmarshal_VkSubpassSampleLocationsEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSubpassSampleLocationsEXT* forUnmarshaling);

void marshal_VkRenderPassSampleLocationsBeginInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassSampleLocationsBeginInfoEXT* forMarshaling);

void unmarshal_VkRenderPassSampleLocationsBeginInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassSampleLocationsBeginInfoEXT* forUnmarshaling);

void marshal_VkPipelineSampleLocationsStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineSampleLocationsStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineSampleLocationsStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineSampleLocationsStateCreateInfoEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceSampleLocationsPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSampleLocationsPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceSampleLocationsPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSampleLocationsPropertiesEXT* forUnmarshaling);

void marshal_VkMultisamplePropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMultisamplePropertiesEXT* forMarshaling);

void unmarshal_VkMultisamplePropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMultisamplePropertiesEXT* forUnmarshaling);

#define OP_vkCmdSetSampleLocationsEXT 20307
#define OP_vkGetPhysicalDeviceMultisamplePropertiesEXT 20308
#endif
#ifdef VK_EXT_blend_operation_advanced
void marshal_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* forUnmarshaling);

void marshal_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineColorBlendAdvancedStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineColorBlendAdvancedStateCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_NV_fragment_coverage_to_color
void marshal_VkPipelineCoverageToColorStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCoverageToColorStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineCoverageToColorStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCoverageToColorStateCreateInfoNV* forUnmarshaling);

#endif
#ifdef VK_NV_framebuffer_mixed_samples
void marshal_VkPipelineCoverageModulationStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCoverageModulationStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineCoverageModulationStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCoverageModulationStateCreateInfoNV* forUnmarshaling);

#endif
#ifdef VK_NV_fill_rectangle
#endif
#ifdef VK_NV_shader_sm_builtins
void marshal_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_EXT_post_depth_coverage
#endif
#ifdef VK_EXT_image_drm_format_modifier
void marshal_VkDrmFormatModifierPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDrmFormatModifierPropertiesEXT* forMarshaling);

void unmarshal_VkDrmFormatModifierPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDrmFormatModifierPropertiesEXT* forUnmarshaling);

void marshal_VkDrmFormatModifierPropertiesListEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDrmFormatModifierPropertiesListEXT* forMarshaling);

void unmarshal_VkDrmFormatModifierPropertiesListEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDrmFormatModifierPropertiesListEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceImageDrmFormatModifierInfoEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceImageDrmFormatModifierInfoEXT* forUnmarshaling);

void marshal_VkImageDrmFormatModifierListCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageDrmFormatModifierListCreateInfoEXT* forMarshaling);

void unmarshal_VkImageDrmFormatModifierListCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageDrmFormatModifierListCreateInfoEXT* forUnmarshaling);

void marshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageDrmFormatModifierExplicitCreateInfoEXT* forMarshaling);

void unmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageDrmFormatModifierExplicitCreateInfoEXT* forUnmarshaling);

void marshal_VkImageDrmFormatModifierPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImageDrmFormatModifierPropertiesEXT* forMarshaling);

void unmarshal_VkImageDrmFormatModifierPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImageDrmFormatModifierPropertiesEXT* forUnmarshaling);

#define OP_vkGetImageDrmFormatModifierPropertiesEXT 251301237
#endif
#ifdef VK_EXT_validation_cache
void marshal_VkValidationCacheCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkValidationCacheCreateInfoEXT* forMarshaling);

void unmarshal_VkValidationCacheCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkValidationCacheCreateInfoEXT* forUnmarshaling);

void marshal_VkShaderModuleValidationCacheCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkShaderModuleValidationCacheCreateInfoEXT* forMarshaling);

void unmarshal_VkShaderModuleValidationCacheCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkShaderModuleValidationCacheCreateInfoEXT* forUnmarshaling);

#define OP_vkCreateValidationCacheEXT 20309
#define OP_vkDestroyValidationCacheEXT 20310
#define OP_vkMergeValidationCachesEXT 20311
#define OP_vkGetValidationCacheDataEXT 20312
#endif
#ifdef VK_EXT_descriptor_indexing
DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorSetLayoutBindingFlagsCreateInfo, marshal_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfo, unmarshal_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceDescriptorIndexingFeatures, marshal_VkPhysicalDeviceDescriptorIndexingFeaturesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceDescriptorIndexingFeatures, unmarshal_VkPhysicalDeviceDescriptorIndexingFeaturesEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceDescriptorIndexingProperties, marshal_VkPhysicalDeviceDescriptorIndexingPropertiesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceDescriptorIndexingProperties, unmarshal_VkPhysicalDeviceDescriptorIndexingPropertiesEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorSetVariableDescriptorCountAllocateInfo, marshal_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfo, unmarshal_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkDescriptorSetVariableDescriptorCountLayoutSupport, marshal_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupport, unmarshal_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT);

#endif
#ifdef VK_EXT_shader_viewport_index_layer
#endif
#ifdef VK_NV_shading_rate_image
void marshal_VkShadingRatePaletteNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkShadingRatePaletteNV* forMarshaling);

void unmarshal_VkShadingRatePaletteNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkShadingRatePaletteNV* forUnmarshaling);

void marshal_VkPipelineViewportShadingRateImageStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportShadingRateImageStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineViewportShadingRateImageStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportShadingRateImageStateCreateInfoNV* forUnmarshaling);

void marshal_VkPhysicalDeviceShadingRateImageFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShadingRateImageFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceShadingRateImageFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShadingRateImageFeaturesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceShadingRateImagePropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShadingRateImagePropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceShadingRateImagePropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShadingRateImagePropertiesNV* forUnmarshaling);

void marshal_VkCoarseSampleLocationNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCoarseSampleLocationNV* forMarshaling);

void unmarshal_VkCoarseSampleLocationNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCoarseSampleLocationNV* forUnmarshaling);

void marshal_VkCoarseSampleOrderCustomNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCoarseSampleOrderCustomNV* forMarshaling);

void unmarshal_VkCoarseSampleOrderCustomNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCoarseSampleOrderCustomNV* forUnmarshaling);

void marshal_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* forUnmarshaling);

#define OP_vkCmdBindShadingRateImageNV 238618340
#define OP_vkCmdSetViewportShadingRatePaletteNV 215295078
#define OP_vkCmdSetCoarseSampleOrderNV 236858637
#endif
#ifdef VK_NV_ray_tracing
void marshal_VkRayTracingShaderGroupCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRayTracingShaderGroupCreateInfoNV* forMarshaling);

void unmarshal_VkRayTracingShaderGroupCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRayTracingShaderGroupCreateInfoNV* forUnmarshaling);

void marshal_VkRayTracingPipelineCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRayTracingPipelineCreateInfoNV* forMarshaling);

void unmarshal_VkRayTracingPipelineCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRayTracingPipelineCreateInfoNV* forUnmarshaling);

void marshal_VkGeometryTrianglesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeometryTrianglesNV* forMarshaling);

void unmarshal_VkGeometryTrianglesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeometryTrianglesNV* forUnmarshaling);

void marshal_VkGeometryAABBNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeometryAABBNV* forMarshaling);

void unmarshal_VkGeometryAABBNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeometryAABBNV* forUnmarshaling);

void marshal_VkGeometryDataNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeometryDataNV* forMarshaling);

void unmarshal_VkGeometryDataNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeometryDataNV* forUnmarshaling);

void marshal_VkGeometryNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeometryNV* forMarshaling);

void unmarshal_VkGeometryNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeometryNV* forUnmarshaling);

void marshal_VkAccelerationStructureInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureInfoNV* forMarshaling);

void unmarshal_VkAccelerationStructureInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureInfoNV* forUnmarshaling);

void marshal_VkAccelerationStructureCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureCreateInfoNV* forMarshaling);

void unmarshal_VkAccelerationStructureCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureCreateInfoNV* forUnmarshaling);

void marshal_VkBindAccelerationStructureMemoryInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindAccelerationStructureMemoryInfoNV* forMarshaling);

void unmarshal_VkBindAccelerationStructureMemoryInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindAccelerationStructureMemoryInfoNV* forUnmarshaling);

void marshal_VkWriteDescriptorSetAccelerationStructureNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWriteDescriptorSetAccelerationStructureNV* forMarshaling);

void unmarshal_VkWriteDescriptorSetAccelerationStructureNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWriteDescriptorSetAccelerationStructureNV* forUnmarshaling);

void marshal_VkAccelerationStructureMemoryRequirementsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureMemoryRequirementsInfoNV* forMarshaling);

void unmarshal_VkAccelerationStructureMemoryRequirementsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureMemoryRequirementsInfoNV* forUnmarshaling);

void marshal_VkPhysicalDeviceRayTracingPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRayTracingPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceRayTracingPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRayTracingPropertiesNV* forUnmarshaling);

void marshal_VkTransformMatrixKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkTransformMatrixKHR* forMarshaling);

void unmarshal_VkTransformMatrixKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkTransformMatrixKHR* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkTransformMatrixKHR, marshal_VkTransformMatrixNV);

DEFINE_ALIAS_FUNCTION(unmarshal_VkTransformMatrixKHR, unmarshal_VkTransformMatrixNV);

void marshal_VkAabbPositionsKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAabbPositionsKHR* forMarshaling);

void unmarshal_VkAabbPositionsKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAabbPositionsKHR* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkAabbPositionsKHR, marshal_VkAabbPositionsNV);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAabbPositionsKHR, unmarshal_VkAabbPositionsNV);

void marshal_VkAccelerationStructureInstanceKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureInstanceKHR* forMarshaling);

void unmarshal_VkAccelerationStructureInstanceKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureInstanceKHR* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkAccelerationStructureInstanceKHR, marshal_VkAccelerationStructureInstanceNV);

DEFINE_ALIAS_FUNCTION(unmarshal_VkAccelerationStructureInstanceKHR, unmarshal_VkAccelerationStructureInstanceNV);

#define OP_vkCreateAccelerationStructureNV 259713020
#define OP_vkDestroyAccelerationStructureNV 252775746
#define OP_vkGetAccelerationStructureMemoryRequirementsNV 220234370
#define OP_vkBindAccelerationStructureMemoryNV 202856743
#define OP_vkCmdBuildAccelerationStructureNV 269050897
#define OP_vkCmdCopyAccelerationStructureNV 211075498
#define OP_vkCmdTraceRaysNV 210219912
#define OP_vkCreateRayTracingPipelinesNV 203653638
#define OP_vkGetRayTracingShaderGroupHandlesKHR 271962641
#define OP_vkGetRayTracingShaderGroupHandlesNV 230045846
#define OP_vkGetAccelerationStructureHandleNV 269898134
#define OP_vkCmdWriteAccelerationStructuresPropertiesNV 207954431
#define OP_vkCompileDeferredNV 278731610
#endif
#ifdef VK_NV_representative_fragment_test
void marshal_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* forUnmarshaling);

void marshal_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRepresentativeFragmentTestStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRepresentativeFragmentTestStateCreateInfoNV* forUnmarshaling);

#endif
#ifdef VK_EXT_filter_cubic
void marshal_VkPhysicalDeviceImageViewImageFormatInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceImageViewImageFormatInfoEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceImageViewImageFormatInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceImageViewImageFormatInfoEXT* forUnmarshaling);

void marshal_VkFilterCubicImageViewImageFormatPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFilterCubicImageViewImageFormatPropertiesEXT* forMarshaling);

void unmarshal_VkFilterCubicImageViewImageFormatPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFilterCubicImageViewImageFormatPropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_QCOM_render_pass_shader_resolve
#endif
#ifdef VK_EXT_global_priority
void marshal_VkDeviceQueueGlobalPriorityCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceQueueGlobalPriorityCreateInfoEXT* forMarshaling);

void unmarshal_VkDeviceQueueGlobalPriorityCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceQueueGlobalPriorityCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_external_memory_host
void marshal_VkImportMemoryHostPointerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportMemoryHostPointerInfoEXT* forMarshaling);

void unmarshal_VkImportMemoryHostPointerInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportMemoryHostPointerInfoEXT* forUnmarshaling);

void marshal_VkMemoryHostPointerPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryHostPointerPropertiesEXT* forMarshaling);

void unmarshal_VkMemoryHostPointerPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryHostPointerPropertiesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExternalMemoryHostPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExternalMemoryHostPropertiesEXT* forUnmarshaling);

#define OP_vkGetMemoryHostPointerPropertiesEXT 20313
#endif
#ifdef VK_AMD_buffer_marker
#define OP_vkCmdWriteBufferMarkerAMD 20314
#endif
#ifdef VK_AMD_pipeline_compiler_control
void marshal_VkPipelineCompilerControlCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCompilerControlCreateInfoAMD* forMarshaling);

void unmarshal_VkPipelineCompilerControlCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCompilerControlCreateInfoAMD* forUnmarshaling);

#endif
#ifdef VK_EXT_calibrated_timestamps
void marshal_VkCalibratedTimestampInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCalibratedTimestampInfoEXT* forMarshaling);

void unmarshal_VkCalibratedTimestampInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCalibratedTimestampInfoEXT* forUnmarshaling);

#define OP_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT 295643221
#define OP_vkGetCalibratedTimestampsEXT 203583186
#endif
#ifdef VK_AMD_shader_core_properties
void marshal_VkPhysicalDeviceShaderCorePropertiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderCorePropertiesAMD* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderCorePropertiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderCorePropertiesAMD* forUnmarshaling);

#endif
#ifdef VK_AMD_memory_overallocation_behavior
void marshal_VkDeviceMemoryOverallocationCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceMemoryOverallocationCreateInfoAMD* forMarshaling);

void unmarshal_VkDeviceMemoryOverallocationCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceMemoryOverallocationCreateInfoAMD* forUnmarshaling);

#endif
#ifdef VK_EXT_vertex_attribute_divisor
void marshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* forUnmarshaling);

void marshal_VkVertexInputBindingDivisorDescriptionEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkVertexInputBindingDivisorDescriptionEXT* forMarshaling);

void unmarshal_VkVertexInputBindingDivisorDescriptionEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkVertexInputBindingDivisorDescriptionEXT* forUnmarshaling);

void marshal_VkPipelineVertexInputDivisorStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineVertexInputDivisorStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineVertexInputDivisorStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineVertexInputDivisorStateCreateInfoEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_GGP_frame_token
void marshal_VkPresentFrameTokenGGP(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPresentFrameTokenGGP* forMarshaling);

void unmarshal_VkPresentFrameTokenGGP(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPresentFrameTokenGGP* forUnmarshaling);

#endif
#ifdef VK_EXT_pipeline_creation_feedback
void marshal_VkPipelineCreationFeedbackEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCreationFeedbackEXT* forMarshaling);

void unmarshal_VkPipelineCreationFeedbackEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCreationFeedbackEXT* forUnmarshaling);

void marshal_VkPipelineCreationFeedbackCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCreationFeedbackCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineCreationFeedbackCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCreationFeedbackCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_NV_shader_subgroup_partitioned
#endif
#ifdef VK_NV_compute_shader_derivatives
void marshal_VkPhysicalDeviceComputeShaderDerivativesFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceComputeShaderDerivativesFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_NV_mesh_shader
void marshal_VkPhysicalDeviceMeshShaderFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMeshShaderFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceMeshShaderFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMeshShaderFeaturesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceMeshShaderPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMeshShaderPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceMeshShaderPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMeshShaderPropertiesNV* forUnmarshaling);

void marshal_VkDrawMeshTasksIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDrawMeshTasksIndirectCommandNV* forMarshaling);

void unmarshal_VkDrawMeshTasksIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDrawMeshTasksIndirectCommandNV* forUnmarshaling);

#define OP_vkCmdDrawMeshTasksNV 207334931
#define OP_vkCmdDrawMeshTasksIndirectNV 274079208
#define OP_vkCmdDrawMeshTasksIndirectCountNV 223801967
#endif
#ifdef VK_NV_fragment_shader_barycentric
void marshal_VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_NV_shader_image_footprint
void marshal_VkPhysicalDeviceShaderImageFootprintFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderImageFootprintFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderImageFootprintFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderImageFootprintFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_NV_scissor_exclusive
void marshal_VkPipelineViewportExclusiveScissorStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineViewportExclusiveScissorStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineViewportExclusiveScissorStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineViewportExclusiveScissorStateCreateInfoNV* forUnmarshaling);

void marshal_VkPhysicalDeviceExclusiveScissorFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExclusiveScissorFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceExclusiveScissorFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExclusiveScissorFeaturesNV* forUnmarshaling);

#define OP_vkCmdSetExclusiveScissorNV 225408194
#endif
#ifdef VK_NV_device_diagnostic_checkpoints
void marshal_VkQueueFamilyCheckpointPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueueFamilyCheckpointPropertiesNV* forMarshaling);

void unmarshal_VkQueueFamilyCheckpointPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueueFamilyCheckpointPropertiesNV* forUnmarshaling);

void marshal_VkCheckpointDataNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCheckpointDataNV* forMarshaling);

void unmarshal_VkCheckpointDataNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCheckpointDataNV* forUnmarshaling);

#define OP_vkCmdSetCheckpointNV 20315
#define OP_vkGetQueueCheckpointDataNV 20316
#endif
#ifdef VK_INTEL_shader_integer_functions2
void marshal_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* forUnmarshaling);

#endif
#ifdef VK_INTEL_performance_query
void marshal_VkPerformanceValueDataINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceValueDataINTEL* forMarshaling);

void unmarshal_VkPerformanceValueDataINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceValueDataINTEL* forUnmarshaling);

void marshal_VkPerformanceValueINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceValueINTEL* forMarshaling);

void unmarshal_VkPerformanceValueINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceValueINTEL* forUnmarshaling);

void marshal_VkInitializePerformanceApiInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkInitializePerformanceApiInfoINTEL* forMarshaling);

void unmarshal_VkInitializePerformanceApiInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkInitializePerformanceApiInfoINTEL* forUnmarshaling);

void marshal_VkQueryPoolPerformanceQueryCreateInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkQueryPoolPerformanceQueryCreateInfoINTEL* forMarshaling);

void unmarshal_VkQueryPoolPerformanceQueryCreateInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkQueryPoolPerformanceQueryCreateInfoINTEL* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkQueryPoolPerformanceQueryCreateInfoINTEL, marshal_VkQueryPoolCreateInfoINTEL);

DEFINE_ALIAS_FUNCTION(unmarshal_VkQueryPoolPerformanceQueryCreateInfoINTEL, unmarshal_VkQueryPoolCreateInfoINTEL);

void marshal_VkPerformanceMarkerInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceMarkerInfoINTEL* forMarshaling);

void unmarshal_VkPerformanceMarkerInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceMarkerInfoINTEL* forUnmarshaling);

void marshal_VkPerformanceStreamMarkerInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceStreamMarkerInfoINTEL* forMarshaling);

void unmarshal_VkPerformanceStreamMarkerInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceStreamMarkerInfoINTEL* forUnmarshaling);

void marshal_VkPerformanceOverrideInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceOverrideInfoINTEL* forMarshaling);

void unmarshal_VkPerformanceOverrideInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceOverrideInfoINTEL* forUnmarshaling);

void marshal_VkPerformanceConfigurationAcquireInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPerformanceConfigurationAcquireInfoINTEL* forMarshaling);

void unmarshal_VkPerformanceConfigurationAcquireInfoINTEL(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPerformanceConfigurationAcquireInfoINTEL* forUnmarshaling);

#define OP_vkInitializePerformanceApiINTEL 203336121
#define OP_vkUninitializePerformanceApiINTEL 296137321
#define OP_vkCmdSetPerformanceMarkerINTEL 270016385
#define OP_vkCmdSetPerformanceStreamMarkerINTEL 261519634
#define OP_vkCmdSetPerformanceOverrideINTEL 251310287
#define OP_vkAcquirePerformanceConfigurationINTEL 245737492
#define OP_vkReleasePerformanceConfigurationINTEL 252877217
#define OP_vkQueueSetPerformanceConfigurationINTEL 294947726
#define OP_vkGetPerformanceParameterINTEL 213620482
#endif
#ifdef VK_EXT_pci_bus_info
void marshal_VkPhysicalDevicePCIBusInfoPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePCIBusInfoPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDevicePCIBusInfoPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePCIBusInfoPropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_AMD_display_native_hdr
void marshal_VkDisplayNativeHdrSurfaceCapabilitiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDisplayNativeHdrSurfaceCapabilitiesAMD* forMarshaling);

void unmarshal_VkDisplayNativeHdrSurfaceCapabilitiesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDisplayNativeHdrSurfaceCapabilitiesAMD* forUnmarshaling);

void marshal_VkSwapchainDisplayNativeHdrCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSwapchainDisplayNativeHdrCreateInfoAMD* forMarshaling);

void unmarshal_VkSwapchainDisplayNativeHdrCreateInfoAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSwapchainDisplayNativeHdrCreateInfoAMD* forUnmarshaling);

#define OP_vkSetLocalDimmingAMD 267533472
#endif
#ifdef VK_FUCHSIA_imagepipe_surface
void marshal_VkImagePipeSurfaceCreateInfoFUCHSIA(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImagePipeSurfaceCreateInfoFUCHSIA* forMarshaling);

void unmarshal_VkImagePipeSurfaceCreateInfoFUCHSIA(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImagePipeSurfaceCreateInfoFUCHSIA* forUnmarshaling);

#define OP_vkCreateImagePipeSurfaceFUCHSIA 261626137
#endif
#ifdef VK_EXT_metal_surface
void marshal_VkMetalSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMetalSurfaceCreateInfoEXT* forMarshaling);

void unmarshal_VkMetalSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMetalSurfaceCreateInfoEXT* forUnmarshaling);

#define OP_vkCreateMetalSurfaceEXT 254915953
#endif
#ifdef VK_EXT_fragment_density_map
void marshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentDensityMapFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentDensityMapFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentDensityMapPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentDensityMapPropertiesEXT* forUnmarshaling);

void marshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassFragmentDensityMapCreateInfoEXT* forMarshaling);

void unmarshal_VkRenderPassFragmentDensityMapCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassFragmentDensityMapCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_scalar_block_layout
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceScalarBlockLayoutFeatures, marshal_VkPhysicalDeviceScalarBlockLayoutFeaturesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceScalarBlockLayoutFeatures, unmarshal_VkPhysicalDeviceScalarBlockLayoutFeaturesEXT);

#endif
#ifdef VK_GOOGLE_hlsl_functionality1
#endif
#ifdef VK_GOOGLE_decorate_string
#endif
#ifdef VK_EXT_subgroup_size_control
void marshal_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSubgroupSizeControlFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceSubgroupSizeControlPropertiesEXT* forUnmarshaling);

void marshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_AMD_shader_core_properties2
void marshal_VkPhysicalDeviceShaderCoreProperties2AMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderCoreProperties2AMD* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderCoreProperties2AMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderCoreProperties2AMD* forUnmarshaling);

#endif
#ifdef VK_AMD_device_coherent_memory
void marshal_VkPhysicalDeviceCoherentMemoryFeaturesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCoherentMemoryFeaturesAMD* forMarshaling);

void unmarshal_VkPhysicalDeviceCoherentMemoryFeaturesAMD(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCoherentMemoryFeaturesAMD* forUnmarshaling);

#endif
#ifdef VK_EXT_shader_image_atomic_int64
void marshal_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_memory_budget
void marshal_VkPhysicalDeviceMemoryBudgetPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMemoryBudgetPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceMemoryBudgetPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMemoryBudgetPropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_memory_priority
void marshal_VkPhysicalDeviceMemoryPriorityFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceMemoryPriorityFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceMemoryPriorityFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceMemoryPriorityFeaturesEXT* forUnmarshaling);

void marshal_VkMemoryPriorityAllocateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkMemoryPriorityAllocateInfoEXT* forMarshaling);

void unmarshal_VkMemoryPriorityAllocateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkMemoryPriorityAllocateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_NV_dedicated_allocation_image_aliasing
void marshal_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* forUnmarshaling);

#endif
#ifdef VK_EXT_buffer_device_address
void marshal_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* forUnmarshaling);

DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, marshal_VkPhysicalDeviceBufferAddressFeaturesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT, unmarshal_VkPhysicalDeviceBufferAddressFeaturesEXT);

DEFINE_ALIAS_FUNCTION(marshal_VkBufferDeviceAddressInfo, marshal_VkBufferDeviceAddressInfoEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkBufferDeviceAddressInfo, unmarshal_VkBufferDeviceAddressInfoEXT);

void marshal_VkBufferDeviceAddressCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBufferDeviceAddressCreateInfoEXT* forMarshaling);

void unmarshal_VkBufferDeviceAddressCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBufferDeviceAddressCreateInfoEXT* forUnmarshaling);

#define OP_vkGetBufferDeviceAddressEXT 224361693
#endif
#ifdef VK_EXT_tooling_info
void marshal_VkPhysicalDeviceToolPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceToolPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceToolPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceToolPropertiesEXT* forUnmarshaling);

#define OP_vkGetPhysicalDeviceToolPropertiesEXT 282247593
#endif
#ifdef VK_EXT_separate_stencil_usage
DEFINE_ALIAS_FUNCTION(marshal_VkImageStencilUsageCreateInfo, marshal_VkImageStencilUsageCreateInfoEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkImageStencilUsageCreateInfo, unmarshal_VkImageStencilUsageCreateInfoEXT);

#endif
#ifdef VK_EXT_validation_features
void marshal_VkValidationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkValidationFeaturesEXT* forMarshaling);

void unmarshal_VkValidationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkValidationFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_NV_cooperative_matrix
void marshal_VkCooperativeMatrixPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCooperativeMatrixPropertiesNV* forMarshaling);

void unmarshal_VkCooperativeMatrixPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCooperativeMatrixPropertiesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceCooperativeMatrixFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCooperativeMatrixFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceCooperativeMatrixFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCooperativeMatrixFeaturesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceCooperativeMatrixPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCooperativeMatrixPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceCooperativeMatrixPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCooperativeMatrixPropertiesNV* forUnmarshaling);

#define OP_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV 287711429
#endif
#ifdef VK_NV_coverage_reduction_mode
void marshal_VkPhysicalDeviceCoverageReductionModeFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCoverageReductionModeFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceCoverageReductionModeFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCoverageReductionModeFeaturesNV* forUnmarshaling);

void marshal_VkPipelineCoverageReductionStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineCoverageReductionStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineCoverageReductionStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineCoverageReductionStateCreateInfoNV* forUnmarshaling);

void marshal_VkFramebufferMixedSamplesCombinationNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkFramebufferMixedSamplesCombinationNV* forMarshaling);

void unmarshal_VkFramebufferMixedSamplesCombinationNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkFramebufferMixedSamplesCombinationNV* forUnmarshaling);

#define OP_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV 292032159
#endif
#ifdef VK_EXT_fragment_shader_interlock
void marshal_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_ycbcr_image_arrays
void marshal_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_full_screen_exclusive
void marshal_VkSurfaceFullScreenExclusiveInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceFullScreenExclusiveInfoEXT* forMarshaling);

void unmarshal_VkSurfaceFullScreenExclusiveInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceFullScreenExclusiveInfoEXT* forUnmarshaling);

void marshal_VkSurfaceCapabilitiesFullScreenExclusiveEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceCapabilitiesFullScreenExclusiveEXT* forMarshaling);

void unmarshal_VkSurfaceCapabilitiesFullScreenExclusiveEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceCapabilitiesFullScreenExclusiveEXT* forUnmarshaling);

#define OP_vkGetPhysicalDeviceSurfacePresentModes2EXT 268126279
#define OP_vkAcquireFullScreenExclusiveModeEXT 200946668
#define OP_vkReleaseFullScreenExclusiveModeEXT 257629142
void marshal_VkSurfaceFullScreenExclusiveWin32InfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSurfaceFullScreenExclusiveWin32InfoEXT* forMarshaling);

void unmarshal_VkSurfaceFullScreenExclusiveWin32InfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSurfaceFullScreenExclusiveWin32InfoEXT* forUnmarshaling);

#define OP_vkGetDeviceGroupSurfacePresentModes2EXT 206369543
#endif
#ifdef VK_EXT_headless_surface
void marshal_VkHeadlessSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkHeadlessSurfaceCreateInfoEXT* forMarshaling);

void unmarshal_VkHeadlessSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkHeadlessSurfaceCreateInfoEXT* forUnmarshaling);

#define OP_vkCreateHeadlessSurfaceEXT 298411290
#endif
#ifdef VK_EXT_line_rasterization
void marshal_VkPhysicalDeviceLineRasterizationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceLineRasterizationFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceLineRasterizationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceLineRasterizationFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceLineRasterizationPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceLineRasterizationPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceLineRasterizationPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceLineRasterizationPropertiesEXT* forUnmarshaling);

void marshal_VkPipelineRasterizationLineStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineRasterizationLineStateCreateInfoEXT* forMarshaling);

void unmarshal_VkPipelineRasterizationLineStateCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineRasterizationLineStateCreateInfoEXT* forUnmarshaling);

#define OP_vkCmdSetLineStippleEXT 263855692
#endif
#ifdef VK_EXT_shader_atomic_float
void marshal_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_host_query_reset
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceHostQueryResetFeatures, marshal_VkPhysicalDeviceHostQueryResetFeaturesEXT);

DEFINE_ALIAS_FUNCTION(unmarshal_VkPhysicalDeviceHostQueryResetFeatures, unmarshal_VkPhysicalDeviceHostQueryResetFeaturesEXT);

#define OP_vkResetQueryPoolEXT 242995959
#endif
#ifdef VK_EXT_index_type_uint8
void marshal_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceIndexTypeUint8FeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceIndexTypeUint8FeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_extended_dynamic_state
void marshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* forUnmarshaling);

#define OP_vkCmdSetCullModeEXT 266285895
#define OP_vkCmdSetFrontFaceEXT 212644406
#define OP_vkCmdSetPrimitiveTopologyEXT 260783979
#define OP_vkCmdSetViewportWithCountEXT 257105245
#define OP_vkCmdSetScissorWithCountEXT 204588120
#define OP_vkCmdBindVertexBuffers2EXT 243419921
#define OP_vkCmdSetDepthTestEnableEXT 233771166
#define OP_vkCmdSetDepthWriteEnableEXT 218663304
#define OP_vkCmdSetDepthCompareOpEXT 247761589
#define OP_vkCmdSetDepthBoundsTestEnableEXT 223213519
#define OP_vkCmdSetStencilTestEnableEXT 286438749
#define OP_vkCmdSetStencilOpEXT 277159578
#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void marshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_NV_device_generated_commands
void marshal_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* forUnmarshaling);

void marshal_VkGraphicsShaderGroupCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGraphicsShaderGroupCreateInfoNV* forMarshaling);

void unmarshal_VkGraphicsShaderGroupCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGraphicsShaderGroupCreateInfoNV* forUnmarshaling);

void marshal_VkGraphicsPipelineShaderGroupsCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGraphicsPipelineShaderGroupsCreateInfoNV* forMarshaling);

void unmarshal_VkGraphicsPipelineShaderGroupsCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGraphicsPipelineShaderGroupsCreateInfoNV* forUnmarshaling);

void marshal_VkBindShaderGroupIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindShaderGroupIndirectCommandNV* forMarshaling);

void unmarshal_VkBindShaderGroupIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindShaderGroupIndirectCommandNV* forUnmarshaling);

void marshal_VkBindIndexBufferIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindIndexBufferIndirectCommandNV* forMarshaling);

void unmarshal_VkBindIndexBufferIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindIndexBufferIndirectCommandNV* forUnmarshaling);

void marshal_VkBindVertexBufferIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkBindVertexBufferIndirectCommandNV* forMarshaling);

void unmarshal_VkBindVertexBufferIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkBindVertexBufferIndirectCommandNV* forUnmarshaling);

void marshal_VkSetStateFlagsIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSetStateFlagsIndirectCommandNV* forMarshaling);

void unmarshal_VkSetStateFlagsIndirectCommandNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSetStateFlagsIndirectCommandNV* forUnmarshaling);

void marshal_VkIndirectCommandsStreamNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkIndirectCommandsStreamNV* forMarshaling);

void unmarshal_VkIndirectCommandsStreamNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkIndirectCommandsStreamNV* forUnmarshaling);

void marshal_VkIndirectCommandsLayoutTokenNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkIndirectCommandsLayoutTokenNV* forMarshaling);

void unmarshal_VkIndirectCommandsLayoutTokenNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkIndirectCommandsLayoutTokenNV* forUnmarshaling);

void marshal_VkIndirectCommandsLayoutCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkIndirectCommandsLayoutCreateInfoNV* forMarshaling);

void unmarshal_VkIndirectCommandsLayoutCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkIndirectCommandsLayoutCreateInfoNV* forUnmarshaling);

void marshal_VkGeneratedCommandsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeneratedCommandsInfoNV* forMarshaling);

void unmarshal_VkGeneratedCommandsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeneratedCommandsInfoNV* forUnmarshaling);

void marshal_VkGeneratedCommandsMemoryRequirementsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkGeneratedCommandsMemoryRequirementsInfoNV* forMarshaling);

void unmarshal_VkGeneratedCommandsMemoryRequirementsInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkGeneratedCommandsMemoryRequirementsInfoNV* forUnmarshaling);

#define OP_vkGetGeneratedCommandsMemoryRequirementsNV 249047049
#define OP_vkCmdPreprocessGeneratedCommandsNV 297624330
#define OP_vkCmdExecuteGeneratedCommandsNV 234711184
#define OP_vkCmdBindPipelineShaderGroupNV 270362239
#define OP_vkCreateIndirectCommandsLayoutNV 285310710
#define OP_vkDestroyIndirectCommandsLayoutNV 292584135
#endif
#ifdef VK_EXT_texel_buffer_alignment
void marshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_QCOM_render_pass_transform
void marshal_VkRenderPassTransformBeginInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRenderPassTransformBeginInfoQCOM* forMarshaling);

void unmarshal_VkRenderPassTransformBeginInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRenderPassTransformBeginInfoQCOM* forUnmarshaling);

void marshal_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCommandBufferInheritanceRenderPassTransformInfoQCOM* forMarshaling);

void unmarshal_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCommandBufferInheritanceRenderPassTransformInfoQCOM* forUnmarshaling);

#endif
#ifdef VK_EXT_device_memory_report
void marshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* forUnmarshaling);

void marshal_VkDeviceMemoryReportCallbackDataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceMemoryReportCallbackDataEXT* forMarshaling);

void unmarshal_VkDeviceMemoryReportCallbackDataEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceMemoryReportCallbackDataEXT* forUnmarshaling);

void marshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceDeviceMemoryReportCreateInfoEXT* forMarshaling);

void unmarshal_VkDeviceDeviceMemoryReportCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceDeviceMemoryReportCreateInfoEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_robustness2
void marshal_VkPhysicalDeviceRobustness2FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRobustness2FeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRobustness2FeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceRobustness2PropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRobustness2PropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceRobustness2PropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRobustness2PropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_custom_border_color
void marshal_VkSamplerCustomBorderColorCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkSamplerCustomBorderColorCreateInfoEXT* forMarshaling);

void unmarshal_VkSamplerCustomBorderColorCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkSamplerCustomBorderColorCreateInfoEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCustomBorderColorPropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCustomBorderColorPropertiesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceCustomBorderColorFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceCustomBorderColorFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_GOOGLE_user_type
#endif
#ifdef VK_EXT_private_data
void marshal_VkPhysicalDevicePrivateDataFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePrivateDataFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDevicePrivateDataFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePrivateDataFeaturesEXT* forUnmarshaling);

void marshal_VkDevicePrivateDataCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDevicePrivateDataCreateInfoEXT* forMarshaling);

void unmarshal_VkDevicePrivateDataCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDevicePrivateDataCreateInfoEXT* forUnmarshaling);

void marshal_VkPrivateDataSlotCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPrivateDataSlotCreateInfoEXT* forMarshaling);

void unmarshal_VkPrivateDataSlotCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPrivateDataSlotCreateInfoEXT* forUnmarshaling);

#define OP_vkCreatePrivateDataSlotEXT 236374049
#define OP_vkDestroyPrivateDataSlotEXT 208891309
#define OP_vkSetPrivateDataEXT 225259406
#define OP_vkGetPrivateDataEXT 291399427
#endif
#ifdef VK_EXT_pipeline_creation_cache_control
void marshal_VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_NV_device_diagnostics_config
void marshal_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceDiagnosticsConfigFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceDiagnosticsConfigFeaturesNV* forUnmarshaling);

void marshal_VkDeviceDiagnosticsConfigCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceDiagnosticsConfigCreateInfoNV* forMarshaling);

void unmarshal_VkDeviceDiagnosticsConfigCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceDiagnosticsConfigCreateInfoNV* forUnmarshaling);

#endif
#ifdef VK_QCOM_render_pass_store_ops
#endif
#ifdef VK_NV_fragment_shading_rate_enums
void marshal_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* forUnmarshaling);

void marshal_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPipelineFragmentShadingRateEnumStateCreateInfoNV* forMarshaling);

void unmarshal_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPipelineFragmentShadingRateEnumStateCreateInfoNV* forUnmarshaling);

#define OP_vkCmdSetFragmentShadingRateEnumNV 264649847
#endif
#ifdef VK_EXT_fragment_density_map2
void marshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* forUnmarshaling);

void marshal_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* forUnmarshaling);

#endif
#ifdef VK_QCOM_rotated_copy_commands
void marshal_VkCopyCommandTransformInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyCommandTransformInfoQCOM* forMarshaling);

void unmarshal_VkCopyCommandTransformInfoQCOM(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyCommandTransformInfoQCOM* forUnmarshaling);

#endif
#ifdef VK_EXT_image_robustness
void marshal_VkPhysicalDeviceImageRobustnessFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceImageRobustnessFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDeviceImageRobustnessFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceImageRobustnessFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_4444_formats
void marshal_VkPhysicalDevice4444FormatsFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDevice4444FormatsFeaturesEXT* forMarshaling);

void unmarshal_VkPhysicalDevice4444FormatsFeaturesEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDevice4444FormatsFeaturesEXT* forUnmarshaling);

#endif
#ifdef VK_EXT_directfb_surface
void marshal_VkDirectFBSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDirectFBSurfaceCreateInfoEXT* forMarshaling);

void unmarshal_VkDirectFBSurfaceCreateInfoEXT(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDirectFBSurfaceCreateInfoEXT* forUnmarshaling);

#define OP_vkCreateDirectFBSurfaceEXT 220792403
#define OP_vkGetPhysicalDeviceDirectFBPresentationSupportEXT 285441990
#endif
#ifdef VK_GOOGLE_gfxstream
void marshal_VkImportColorBufferGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportColorBufferGOOGLE* forMarshaling);

void unmarshal_VkImportColorBufferGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportColorBufferGOOGLE* forUnmarshaling);

void marshal_VkImportBufferGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportBufferGOOGLE* forMarshaling);

void unmarshal_VkImportBufferGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportBufferGOOGLE* forUnmarshaling);

void marshal_VkImportPhysicalAddressGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkImportPhysicalAddressGOOGLE* forMarshaling);

void unmarshal_VkImportPhysicalAddressGOOGLE(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkImportPhysicalAddressGOOGLE* forUnmarshaling);

#define OP_vkRegisterImageColorBufferGOOGLE 20318
#define OP_vkRegisterBufferColorBufferGOOGLE 20319
#define OP_vkMapMemoryIntoAddressSpaceGOOGLE 20317
#define OP_vkUpdateDescriptorSetWithTemplateSizedGOOGLE 20320
#define OP_vkBeginCommandBufferAsyncGOOGLE 20321
#define OP_vkEndCommandBufferAsyncGOOGLE 20322
#define OP_vkResetCommandBufferAsyncGOOGLE 20323
#define OP_vkCommandBufferHostSyncGOOGLE 20324
#define OP_vkCreateImageWithRequirementsGOOGLE 20325
#define OP_vkCreateBufferWithRequirementsGOOGLE 20326
#define OP_vkGetMemoryHostAddressInfoGOOGLE 20327
#define OP_vkFreeMemorySyncGOOGLE 20328
#define OP_vkQueueHostSyncGOOGLE 20329
#define OP_vkQueueSubmitAsyncGOOGLE 20330
#define OP_vkQueueWaitIdleAsyncGOOGLE 20331
#define OP_vkQueueBindSparseAsyncGOOGLE 20332
#define OP_vkGetLinearImageLayoutGOOGLE 20333
#define OP_vkQueueFlushCommandsGOOGLE 20340
#define OP_vkQueueCommitDescriptorSetUpdatesGOOGLE 267932433
#define OP_vkCollectDescriptorPoolIdsGOOGLE 213659202
#endif
#ifdef VK_KHR_acceleration_structure
void marshal_VkDeviceOrHostAddressKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceOrHostAddressKHR* forMarshaling);

void unmarshal_VkDeviceOrHostAddressKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceOrHostAddressKHR* forUnmarshaling);

void marshal_VkDeviceOrHostAddressConstKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkDeviceOrHostAddressConstKHR* forMarshaling);

void unmarshal_VkDeviceOrHostAddressConstKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkDeviceOrHostAddressConstKHR* forUnmarshaling);

void marshal_VkAccelerationStructureBuildRangeInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureBuildRangeInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureBuildRangeInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureBuildRangeInfoKHR* forUnmarshaling);

void marshal_VkAccelerationStructureGeometryTrianglesDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureGeometryTrianglesDataKHR* forMarshaling);

void unmarshal_VkAccelerationStructureGeometryTrianglesDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureGeometryTrianglesDataKHR* forUnmarshaling);

void marshal_VkAccelerationStructureGeometryAabbsDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureGeometryAabbsDataKHR* forMarshaling);

void unmarshal_VkAccelerationStructureGeometryAabbsDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureGeometryAabbsDataKHR* forUnmarshaling);

void marshal_VkAccelerationStructureGeometryInstancesDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureGeometryInstancesDataKHR* forMarshaling);

void unmarshal_VkAccelerationStructureGeometryInstancesDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureGeometryInstancesDataKHR* forUnmarshaling);

void marshal_VkAccelerationStructureGeometryDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureGeometryDataKHR* forMarshaling);

void unmarshal_VkAccelerationStructureGeometryDataKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureGeometryDataKHR* forUnmarshaling);

void marshal_VkAccelerationStructureGeometryKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureGeometryKHR* forMarshaling);

void unmarshal_VkAccelerationStructureGeometryKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureGeometryKHR* forUnmarshaling);

void marshal_VkAccelerationStructureBuildGeometryInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureBuildGeometryInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureBuildGeometryInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureBuildGeometryInfoKHR* forUnmarshaling);

void marshal_VkAccelerationStructureCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureCreateInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureCreateInfoKHR* forUnmarshaling);

void marshal_VkWriteDescriptorSetAccelerationStructureKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkWriteDescriptorSetAccelerationStructureKHR* forMarshaling);

void unmarshal_VkWriteDescriptorSetAccelerationStructureKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkWriteDescriptorSetAccelerationStructureKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceAccelerationStructureFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceAccelerationStructureFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceAccelerationStructureFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceAccelerationStructureFeaturesKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceAccelerationStructurePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceAccelerationStructurePropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceAccelerationStructurePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceAccelerationStructurePropertiesKHR* forUnmarshaling);

void marshal_VkAccelerationStructureDeviceAddressInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureDeviceAddressInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureDeviceAddressInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureDeviceAddressInfoKHR* forUnmarshaling);

void marshal_VkAccelerationStructureVersionInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureVersionInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureVersionInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureVersionInfoKHR* forUnmarshaling);

void marshal_VkCopyAccelerationStructureToMemoryInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyAccelerationStructureToMemoryInfoKHR* forMarshaling);

void unmarshal_VkCopyAccelerationStructureToMemoryInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyAccelerationStructureToMemoryInfoKHR* forUnmarshaling);

void marshal_VkCopyMemoryToAccelerationStructureInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyMemoryToAccelerationStructureInfoKHR* forMarshaling);

void unmarshal_VkCopyMemoryToAccelerationStructureInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyMemoryToAccelerationStructureInfoKHR* forUnmarshaling);

void marshal_VkCopyAccelerationStructureInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkCopyAccelerationStructureInfoKHR* forMarshaling);

void unmarshal_VkCopyAccelerationStructureInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkCopyAccelerationStructureInfoKHR* forUnmarshaling);

void marshal_VkAccelerationStructureBuildSizesInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkAccelerationStructureBuildSizesInfoKHR* forMarshaling);

void unmarshal_VkAccelerationStructureBuildSizesInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkAccelerationStructureBuildSizesInfoKHR* forUnmarshaling);

#define OP_vkCreateAccelerationStructureKHR 259403971
#define OP_vkDestroyAccelerationStructureKHR 223971120
#define OP_vkCmdBuildAccelerationStructuresKHR 272943905
#define OP_vkCmdBuildAccelerationStructuresIndirectKHR 258066143
#define OP_vkBuildAccelerationStructuresKHR 241919567
#define OP_vkCopyAccelerationStructureKHR 241495016
#define OP_vkCopyAccelerationStructureToMemoryKHR 256139578
#define OP_vkCopyMemoryToAccelerationStructureKHR 261558680
#define OP_vkWriteAccelerationStructuresPropertiesKHR 289745796
#define OP_vkCmdCopyAccelerationStructureKHR 279460332
#define OP_vkCmdCopyAccelerationStructureToMemoryKHR 223539733
#define OP_vkCmdCopyMemoryToAccelerationStructureKHR 203733963
#define OP_vkGetAccelerationStructureDeviceAddressKHR 223466148
#define OP_vkCmdWriteAccelerationStructuresPropertiesKHR 271696183
#define OP_vkGetDeviceAccelerationStructureCompatibilityKHR 266386590
#define OP_vkGetAccelerationStructureBuildSizesKHR 219720024
#endif
#ifdef VK_KHR_ray_tracing_pipeline
void marshal_VkRayTracingShaderGroupCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRayTracingShaderGroupCreateInfoKHR* forMarshaling);

void unmarshal_VkRayTracingShaderGroupCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRayTracingShaderGroupCreateInfoKHR* forUnmarshaling);

void marshal_VkRayTracingPipelineInterfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRayTracingPipelineInterfaceCreateInfoKHR* forMarshaling);

void unmarshal_VkRayTracingPipelineInterfaceCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRayTracingPipelineInterfaceCreateInfoKHR* forUnmarshaling);

void marshal_VkRayTracingPipelineCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkRayTracingPipelineCreateInfoKHR* forMarshaling);

void unmarshal_VkRayTracingPipelineCreateInfoKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkRayTracingPipelineCreateInfoKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRayTracingPipelineFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRayTracingPipelineFeaturesKHR* forUnmarshaling);

void marshal_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRayTracingPipelinePropertiesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRayTracingPipelinePropertiesKHR* forUnmarshaling);

void marshal_VkStridedDeviceAddressRegionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkStridedDeviceAddressRegionKHR* forMarshaling);

void unmarshal_VkStridedDeviceAddressRegionKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkStridedDeviceAddressRegionKHR* forUnmarshaling);

void marshal_VkTraceRaysIndirectCommandKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkTraceRaysIndirectCommandKHR* forMarshaling);

void unmarshal_VkTraceRaysIndirectCommandKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkTraceRaysIndirectCommandKHR* forUnmarshaling);

#define OP_vkCmdTraceRaysKHR 213680716
#define OP_vkCreateRayTracingPipelinesKHR 247628685
#define OP_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR 221334934
#define OP_vkCmdTraceRaysIndirectKHR 211788517
#define OP_vkGetRayTracingShaderGroupStackSizeKHR 205271933
#define OP_vkCmdSetRayTracingPipelineStackSizeKHR 260219604
#endif
#ifdef VK_KHR_ray_query
void marshal_VkPhysicalDeviceRayQueryFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    const VkPhysicalDeviceRayQueryFeaturesKHR* forMarshaling);

void unmarshal_VkPhysicalDeviceRayQueryFeaturesKHR(
    VulkanStreamGuest* vkStream,
    VkStructureType rootType,
    VkPhysicalDeviceRayQueryFeaturesKHR* forUnmarshaling);

#endif
const char* api_opcode_to_string(
    const uint32_t opcode);

#define OP_vkFirst_old 20000
#define OP_vkLast_old 30000
#define OP_vkFirst 200000000
#define OP_vkLast 300000000

} // namespace goldfish_vk
